PDA

View Full Version : [VB.NET]Popolamento listView


canax
15-01-2010, 08:19
ciao ragazzi, ho un problema con il popolamento di un listView.
Io inserisco magari 2000 item in un colpo solo, ma essi ci mettono un paio di secondi.
Il problema é che il listView per quei due secondi rimane vuoto e poi si rimepie di colpo. Io vorrei fare che man mano che il listVire si popola, vengano visualizzati gli item che entrano, un po come quando in windows si entra in alcune cartelle con delle foto e si vede che il contenuto cresce man mano!!!
Avete qualche idea?

MarcoGG
15-01-2010, 08:37
Se per "colpo solo" intendi dire che usi .AddRange() c'è poco da fare. Invece se aggiungi un Item alla volta all'interno di un ciclo, basta inserire My.Application.DoEvents() dopo l'istruzione di aggiunta alla ListView... ;)

||ElChE||88
15-01-2010, 08:46
ciao ragazzi, ho un problema con il popolamento di un listView.
Io inserisco magari 2000 item in un colpo solo, ma essi ci mettono un paio di secondi.
Il problema é che il listView per quei due secondi rimane vuoto e poi si rimepie di colpo. Io vorrei fare che man mano che il listVire si popola, vengano visualizzati gli item che entrano, un po come quando in windows si entra in alcune cartelle con delle foto e si vede che il contenuto cresce man mano!!!
Avete qualche idea?
Usa la Virtual Mode.
http://msdn.microsoft.com/en-us/library/system.windows.forms.listview.virtualmode.aspx

canax
15-01-2010, 09:28
X colpo solo intendevo che ho un ciclo e fa un add ogni volta.

Ok grazie, adesso guardo anche virtual mode.