help Items.AddRange

Le
Vincent
bonjour,

dans un listview je fais : mylistview.Items.Add("texte")

le problème et que coté affichage, quand il y a 800 lignes . ca rame
pour afficher la liste.

Il me semble que si je faisais un Items.AddRange(la liste de string) ca
irait plus vite.

Elas je n'arrive pas à tranformer la liste de string en listviewitems

mon code serait du genre :

foreach(string texte in maliste)
{

construire messtrings

}
listview.Items.AddRange(messtrings);

je n'ai pas reussi a avoir un code qui marche, la difficulté étant d'ajouter
des strings dans un tableau(?) puis de le transformer en listviewitems(?)

comment construire messtrings ?

une idée ? un exemple ?

merci

Vincent
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles TOURREAU
Le #12170041
Le Tue, 16 Oct 2007 18:27:53 +0200, Vincent

bonjour,

dans un listview je fais : mylistview.Items.Add("texte")

le problème et que coté affichage, quand il y a 800 lignes .... ca rame
pour afficher la liste.

Il me semble que si je faisais un Items.AddRange(la liste de string) ca
irait plus vite.

Elas je n'arrive pas à tranformer la liste de string en listviewitems

mon code serait du genre :

foreach(string texte in maliste)
{

construire messtrings

}
listview.Items.AddRange(messtrings);

je n'ai pas reussi a avoir un code qui marche, la difficulté étant
d'ajouter
des strings dans un tableau(?) puis de le transformer en listviewitems(?)

comment construire messtrings ?

une idée ? un exemple ?

merci

Vincent








Il faut "encadrer" votre ajout entre les méthodes :

lv.BeginUpdate()
lv.Items.Add(...)
lv.EndUpdate()

Cela permet de ne pas redessiner le contrôle à chaque ajout d'un élément...

Inutile dans ce cas de créer un tableau de string...

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Vincent
Le #12170031
Merci, je vais essayer.

un seul begin et end pour plusieurs add ou 1 begin/1 add/1 end ? ( je vais
tester)

Vincent

"Gilles TOURREAU"
Le Tue, 16 Oct 2007 18:27:53 +0200, Vincent

bonjour,

dans un listview je fais : mylistview.Items.Add("texte")

le problème et que coté affichage, quand il y a 800 lignes .... ca rame
pour afficher la liste.

Il me semble que si je faisais un Items.AddRange(la liste de string) ca
irait plus vite.

Elas je n'arrive pas à tranformer la liste de string en listviewitems

mon code serait du genre :

foreach(string texte in maliste)
{

construire messtrings

}
listview.Items.AddRange(messtrings);

je n'ai pas reussi a avoir un code qui marche, la difficulté étant
d'ajouter
des strings dans un tableau(?) puis de le transformer en listviewitems(?)

comment construire messtrings ?

une idée ? un exemple ?

merci

Vincent








Il faut "encadrer" votre ajout entre les méthodes :

lv.BeginUpdate()
lv.Items.Add(...)
lv.EndUpdate()

Cela permet de ne pas redessiner le contrôle à chaque ajout d'un
élément...

Inutile dans ce cas de créer un tableau de string...

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr


jerome crevecoeur
Le #12170021
Salutations,

Un seul begin avant la boucle
et un seul end après la boucle.

Et les performances sont bien meilleures !

Cordialement

Vincent a écrit :
Merci, je vais essayer.

un seul begin et end pour plusieurs add ou 1 begin/1 add/1 end ? ( je v ais
tester)

Vincent

"Gilles TOURREAU"
Le Tue, 16 Oct 2007 18:27:53 +0200, Vincent

bonjour,

dans un listview je fais : mylistview.Items.Add("texte")

le problème et que coté affichage, quand il y a 800 lignes .... ca rame
pour afficher la liste.

Il me semble que si je faisais un Items.AddRange(la liste de string) ca
irait plus vite.

Elas je n'arrive pas à tranformer la liste de string en listviewite ms

mon code serait du genre :

foreach(string texte in maliste)
{

construire messtrings

}
listview.Items.AddRange(messtrings);

je n'ai pas reussi a avoir un code qui marche, la difficulté étan t
d'ajouter
des strings dans un tableau(?) puis de le transformer en listviewitem s(?)

comment construire messtrings ?

une idée ? un exemple ?

merci

Vincent







Il faut "encadrer" votre ajout entre les méthodes :

lv.BeginUpdate()
lv.Items.Add(...)
lv.EndUpdate()

Cela permet de ne pas redessiner le contrôle à chaque ajout d'un
élément...

Inutile dans ce cas de créer un tableau de string...

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr






Publicité
Poster une réponse
Anonyme