Bonjour à tous,

Sur les conseils de POL63, j’essaie de comprendre le fonctionnement du dictionnaire.

Ensuite je voudrais l'utiliser pour faire du binding

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
dim d as new dictionary(of long, string)
d.add(5,"le nombre 5")
dim s as string = d(5) 'retourne "le nombre 5"
d(5) = "maintenant c'est autre chose la valeur"
d.remove(5)
'etc...
ok çà c'est assez simple

Son exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 Private _dico_txt_btns As New Dictionary(Of Button, TextBox)
 
    Private Sub creationcontrols() Handles Button1.Click
        For i As Integer = 1 To 3
 
            Dim t As New TextBox
            t.Location = New System.Drawing.Point(10, 35 * i)
            Me.Controls.Add(t)
 
            Dim b As New Button
            b.Location = New System.Drawing.Point(140, 35 * i)
            Me.Controls.Add(b)
 
            AddHandler b.Click, AddressOf buttonclick
            _dico_txt_btns.Add(b, t)
        Next
    End Sub
 
    Private Sub buttonclick(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim boutoncliqué As Button = DirectCast(sender, Button)
        Dim textboxlié As TextBox = _dico_txt_btns(boutoncliqué)
    End Sub
Donc ici le dico associe un bouton a une textbox.
Je ne comprend pas bien la procédure attaché à l’événement du click sur le bouton:
Le bouton cliqué va prendre place dans la variable boutoncliqué, et ...
_dico_txt_btns(boutoncliqué) pourquoi n'y a t'il qu'un argument?