1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| ''' <summary>Stoque toutes les données des textBox (Name,Text) dans un dictionnaire.</summary>
''' <param name="conteneur">un conteneur de textbox (form, panel, groupbox)</param>
''' <param name="UnDico">le dictionnaire contenant => clé : "nom textbox", valeur : "texte du textbox".</param>
''' <remarks>Procédure récursive sur les groupbox et panel.</remarks>
Sub NoteTextBox(ByVal conteneur As Control, ByRef UnDico As Dictionary(Of String, String))
For Each ctrl As Control In conteneur.Controls
'select sur true (condition vrai), qui sera vérifié sur chaque case si "ctrl" correspond au type de controle
Select Case True
Case TypeOf ctrl Is TextBox ' dans le cas ou le controle est un TextBox, la condition sera vrai
UnDico.Add(ctrl.Name, ctrl.Text) ' on ajoute le nom et le texte du TextBox dans le dictionnaire
Case TypeOf ctrl Is GroupBox ' dans le cas ou le controle est un GroupBox, la condition sera vrai
' appel à la procédure qui ajoutera les noms et les valeurs des textbox dans le dictionnaire (appel récursif)
NoteTextBox(ctrl, UnDico) ' ici le paramètre ctrl est un GroupBox (le paramètre conteneur de la procédure NoteTextBox recevra donc un GroupBox)
Case TypeOf ctrl Is Panel
NoteTextBox(ctrl, UnDico)
End Select
Next
End Sub |