Synchroniser l'index d'un listbox et d'un listview

pcpunch Messages postés 1243 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 18 février 2019 - 18 févr. 2019 à 12:48
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 - 18 févr. 2019 à 14:18
Bonjour je voudrais Synchroniser l'index d'un listbox et d'un listview lors du clic :

Pour le clic sur le listview pas de problème :
Private Sub ListView1_Click(sender As Object, e As EventArgs) Handles ListView1.Click
'Synchronisation avec le listbox
ListBox1.SelectedIndex = ListView1.SelectedItems.Item(0).Index

End Sub


Par contre pour le clic sur la listbox ???:
 Private Sub ListBox1_Click(sender As Object, e As EventArgs) Handles ListBox1.Click
'Synchronisation avec le listview

End Sub

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
18 févr. 2019 à 13:04
Bonjour,

voir ceci pour avoir l'index cliqué de la ListBox :

https://plasserre.developpez.com/cours/vb-net/?page=ui-winforms3#LVIII-H-1-i

0
pcpunch Messages postés 1243 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 18 février 2019 5
18 févr. 2019 à 13:08
Merci mais le probléme n'est pas de recuperer l'index de la listbox, mais de l'attribuer a la listview !
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
Modifié le 18 févr. 2019 à 14:19
comme ceci:

 Private Sub ListBox1_Click(sender As Object, e As System.EventArgs) Handles ListBox1.Click
        Dim n As Integer
        n = ListBox1.SelectedIndex
        ListView1.Focus()
        ListView1.Items(n).Focused = True
        ListView1.Items(n).Selected = True
    End Sub


Voilà

@+
0
Whismeril Messages postés 19020 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 15 avril 2024 656
Modifié le 18 févr. 2019 à 13:19
Bonjour
Listview.Items(n).Selected = true ‘avec n égal à l’index

Par contre, par défaut dans une listview, si le contrôle n’a pas le focus, in ne voit pas quel item est sélectionné.
Il faut changer la propriété HideSelection à false
0
Whismeril Messages postés 19020 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 15 avril 2024 656
18 févr. 2019 à 13:19
Ps pour utliser correctement les balises de code voir ce lien https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
pcpunch Messages postés 1243 Date d'inscription mardi 7 mai 2002 Statut Membre Dernière intervention 18 février 2019 5
18 févr. 2019 à 13:25
Le probléme c'est que la selection est grisé et ne ressemble pas du tout a la selection de listbox
0
Whismeril Messages postés 19020 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 15 avril 2024 656
Modifié le 18 févr. 2019 à 13:31
Juste pour vérifier (je ne fais plus de winform depuis un moment et à l’époque déjà la listview m’exaspérait), pose un contrôle clickable quelconque (button, checkbox, textbox...)
Sélectionne un item dans la listeview et ensuite clique sur le contrôle
0
Rejoignez-nous