Problème de sélection d'une ligne d'un listview avec le code [Résolu]

Signaler
Messages postés
661
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 mars 2011
-
Messages postés
661
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 mars 2011
-
Salut,

Mon souci est que je n'arrive pas à sélectionner une ligne de mon listview avec le code. J'y arrive très bien en faisant dans la procédure : Form_Load en faisant ListView1.Items(0).Selected=True pour sélectionner la première ligne.

Mais quand je clique sur le bouton 'suivant' pour sélectionner la ligne suivante, voici la procédure du bouton :
 
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ListView1.Items(nb).Selected = False
        nb = nb + 1
        ListView1.Items(nb).Selected = True
End Sub, ----

(Coloration syntaxique automatique par Kenji)

Mais ca ne fonctionne pas, il me déselectionne la ligne qui été sélectionnée mais ne sélectionne pas la suivante

Est ce que quelqu'un sait comment résoudre le problème ? Merci

4 réponses

Messages postés
661
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 mars 2011
8
Salut,

J'ai trouvé la solution, voici ce qu'il fallait faire :

ListView1.Items(ListView1.SelectedIndices(0) + 1).Selected = True
ListView1.Focus()

Merci à jmfmarques qui m'as mis sur la voie.
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Si c'est comme avec VB6 (et je le pense) et en admettant qu'un item soit déjà sélectionné, voilà ce qui sélectionne le suivant (pas besoin de nb) 

ListView1.SelectedItem = ListView1.ListItems(ListView1.SelectedItem + 1)
 ListView1.SetFocus

Il est maintenant clair que la sélection ne sera "vue" qu'au setFocus
Messages postés
4
Date d'inscription
jeudi 10 août 2006
Statut
Membre
Dernière intervention
2 mars 2012

amine


merci

ça ma vraiment m'aidé pour séléctionnez toutes les lignes d'une listview.
pour les funs , je vous propose le code pour séléctionnez les lignes d'une listview.


For count
As
Integer = 0
To Listview1.Items.Count - 1


Listview1.Items(count).Selected = True







Listview1.Focus()


Next
Messages postés
661
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 mars 2011
8
Je tiens une petite précision sur le code proposé de ar_amine qu'il faut que la propriété MultiSelect de la ListView soit à True pour que celui ci fonctionne.