OVH Cloud OVH Cloud

TreeVIew, ListBox

2 réponses
Avatar
oliv
Bonjour,

Je remplis une ListBox avec un peu plus de 30000 lignes. Le remplissage se
fait assez rapidement. malheureusement apres je dois modifier la couleur de
certaine ligne et ca je sais pas faire. Si vous avez une solution merci !.

Donc ne sachant pas encore faire j'ai decide d'utiliser un TreeView et la le
problème c'est que le processeur se met à 100% et le remplissage est super
lent.
Je voudrais savoir pourquoi .

merci de vos deux reponses.

2 réponses

Avatar
Paul Bacelar
"oliv" wrote in message
news:
Bonjour,

Je remplis une ListBox avec un peu plus de 30000 lignes. Le remplissage se
fait assez rapidement. malheureusement apres je dois modifier la couleur


de
certaine ligne et ca je sais pas faire. Si vous avez une solution merci !.




myListBox.DrawItem comme méthode à redéfinir ne suffit pas ?

Donc ne sachant pas encore faire j'ai decide d'utiliser un TreeView et la


le
problème c'est que le processeur se met à 100% et le remplissage est super
lent.
Je voudrais savoir pourquoi .



TreeView avec 30000 noeuds, ce n'est pas très utile et elle n'a pas été
conçue pour.



merci de vos deux reponses.





--
Paul Bacelar
Avatar
Zoury
Salut Oliv ! :O)

Je remplis une ListBox avec un peu plus de 30000 lignes.



Il y a définitivement un problème de design.. il est impensable qu'un
utilisateur puisse trouver rapidement ce qu'il cherche dans une liste
contenant 30000 items ! Tu peux diviser tes items par catégories ou par
autre chose... ? car, AMHA, une liste contenant au delà de 500 items s'elle
n'est pas triée et/ou n'offre pas système de recherche n'est pas très
pratique.. :O/

Donc ne sachant pas encore faire j'ai decide d'utiliser un TreeView



Le contrôle TreeView n'a pas la même finalité qu'une liste tu sais ? :O)
Il sert à naviguer dans une hierarchie.

L'événement DrawItem du ListBox, comme la précisé Mr. Bacelar, peut très
bien exécuter cette tâche, regarde l'aide sur DrawItem pour un exemple. (tu
dois modifier la propriété DrawMode du listbox pour que l'événement se
déclenche)

Tu peux également opter pour un contrôle ListView (avec View = View.Details)
qui te permettra de modifier facilement le texte des items désirés.

--
Cordialement
Yanick
MVP pour Visual Basic