Listbox dynamique et events [Résolu]

Signaler
Messages postés
40
Date d'inscription
vendredi 4 avril 2008
Statut
Membre
Dernière intervention
12 septembre 2012
-
Messages postés
40
Date d'inscription
vendredi 4 avril 2008
Statut
Membre
Dernière intervention
12 septembre 2012
-
Bonjour,

J'aimerais savoir si il est possible de faire un lien type "AddHandler AdressOf" sur des listbox créé dynamiquement.
Voici le code pour les listebox :
For j As Integer = 1 To 4
Dim Listbox = New ListBox
Listbox.Name = "Listbox " & j
NouvRum.Controls.Add(Listbox)
AddHandler Listbox.DoubleClick, AddressOf ListBox_DoubleClick
Listbox.Width = 620
For k As Integer = 1 To dt.Rows(i).Item(25).ToString
tmp2 = Replace(Mid$(tmp, 1, 8), " ", "")
Listbox.Items.Add(tmp2)
Next k
Next j
Et ce que j'aimerais c'est quand je clic sur un items d'une de mes listbox, il m'ouvre une boite de dialogue avec le texte de l'items.

J'ai essayé de rajouter ca :
AddHandler Listbox.DoubleClick, AddressOf ListBox_DoubleClick
et
Public Sub ListBox_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs)
MsgBox(sender.ToString)
End Sub

Mais la réponse que j'ai est :
System.Windows.Form.Listbox, Items.Count : 3, Items[0]: H47,2
Sachant que H47,2 est mon premier item de ma listbox, et qu'il me donne ca quelque soit l'item que je clique mais si je clique sur une autre listbox, il me donnera l'item de l'autre listbox.

Pouvez vous m'aider

Merci beaucoup

Piou62

2 réponses

Messages postés
140
Date d'inscription
mardi 25 novembre 2003
Statut
Membre
Dernière intervention
1 novembre 2010
5
bonjour,
En indiquant que l'objet Sender est une ListBox, on peut accéder à ces propriétés, comme par exemple :
    Public Sub ListBox_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs)

        With CType(sender, ListBox)
            MessageBox.Show(CStr(.SelectedItem) & " ; nom de la listbox : " & .Name)
        End With
    End Sub
Messages postés
40
Date d'inscription
vendredi 4 avril 2008
Statut
Membre
Dernière intervention
12 septembre 2012

C'est nickel, ca marche.

Merci beaucoup.