[VB.net] Evenement pour selection multiple listView

Evenement pour selection multiple listView [VB.net] - VB/VBA/VBS - Programmation

Marsh Posté le 09-07-2010 à 16:55:32    

Bonjour tout le monde,  
 
Voila mon probleme dans une application que je dois modifier, j'utilise une listView pour afficher une liste de checkbox d'éléments. J'utilise cette listView pour appliquer un filtre sur un DataGridView. Par défaut j'ai rendu mes checkBox cochées au lancement de mon appli. Lorsque je décoche une case, je rentre dans mon événement, parcourt l'ensemble des éléments présents dans ma liste et si ils sont déchochés, j'actualise mon DataGridView. J'ai activé la multisélection et lorsque je décoche plusieurs cases en même temps, le traitement est un peu lent et moche (clignotement des éléments selectionnés...). Existe-il un moyen de rendre cela plus fluide? Je pense que c'est mon événement qui n'est pas le meilleur mais je ne trouve pas mieux. J'utilise ItemChecked.
 
J'ajoute que je suis débutant en VB.net
 
Merci d'avance pour votre aide! :)

Reply

Marsh Posté le 09-07-2010 à 16:55:32   

Reply

Marsh Posté le 09-07-2010 à 17:47:08    

Hello,
 
pourquoi est-ce que tu reparcours tout les éléments de la liste ? dans l'évènement ItemChecked, tu as l'objet e.Item qui te permet de retrouver l'item coché/décoché et tu peux directement modifier le filtre dans ton DataGridView. Avec ça, si tu en coche 5 en meme temps, il va juste vérifier 5 éléments de ta ListView au lieu de 5x le nombre d'élément de ta ListView


Message édité par Arwon le 09-07-2010 à 17:47:37
Reply

Marsh Posté le 13-07-2010 à 14:35:24    

Bonjour, merci de ta réponse. Lorsque j'utilise e.Item dans l'évènement ItemChecked, j'ai l'erreur:
 
"Item n'est pas un membre de 'System.EventArgs'"
 
Merci

Reply

Marsh Posté le 13-07-2010 à 21:00:06    

Tu dois avoir une couille dans la signature de ton handler, qui doit définir un EventArgs là où un ItemCheckedEventArgs devrait apparaitre...


---------------
Topic .Net - C# @ Prog
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed