Lire des labels créées dynamiquement [Résolu]

Signaler
Messages postés
16
Date d'inscription
samedi 28 octobre 2000
Statut
Membre
Dernière intervention
24 septembre 2012
-
Messages postés
363
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
20 avril 2010
-
bonjour,

je viens de créer des labels et textbox dynamiquement avec cette source
http://vbfrance.com/code.aspx?ID=5616

et je voudrais savoir comment les lire maintenant pour pouvoir récupérer leur valeur et les enregistrer ailleurs (fichier)

merci de votre réponse

5 réponses

Messages postés
16
Date d'inscription
samedi 28 octobre 2000
Statut
Membre
Dernière intervention
24 septembre 2012

Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim xml_fichier As New GabXML(TextBox1.Text)
Dim nb_elts As Integer = xml_fichier.countElements("/INI/PARAMETRE")

Dim groupe As New GroupBox

groupe.Name = "groupevp"
groupe.Text = xml_fichier.getAttribute("/INI/PARAMETRE", "module")
groupe.Top = 50
groupe.Left = 16
groupe.Height = 20
groupe.Width = 330
TabPage2.Controls.Add(groupe)

For i As Integer = 0 To nb_elts - 1

Dim libelle As New Label
Dim valeurs As New TextBox

libelle.Name = "Newlibelle" + (i).ToString() 'defini le nom du text
libelle.Text = xml_fichier.getElementValue("/INI/PARAMETRE/LIBELLE", i)
libelle.Width = 150 'on defini la taille horizontale
libelle.Height = 25 'on defini la taille verticale
libelle.Top = 20 + i * libelle.Height
libelle.Left = 10

groupe.Controls.Add(libelle)

valeurs.Name = "Newvaleurs" + (i).ToString() 'defini le nom du text
valeurs.Text = xml_fichier.getElementValue("/INI/PARAMETRE/VALEUR", i)
valeurs.Width = 140 'on defini la taille horizontale
valeurs.Height = 25 'on defini la taille verticale
valeurs.Top = libelle.Top - 3
valeurs.Left = libelle.Left + libelle.Width + 10
valeurs.Tag = libelle

groupe.Controls.Add(valeurs)

groupe.Height = groupe.Height + libelle.Height

Next
groupe.Height = groupe.Height + 10
TabControl1.Height = groupe.Height + 90
Me.Height = TabControl1.Height + TabControl1.Top * 2 + 35

'MsgBox(groupe.Controls("Newlibelle2").Text)
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim l_controls As Control
Dim l_controls2 As Control
Dim i As Integer = 0

For Each l_controls In Me.TabPage2.Controls
If (l_controls.GetType Is GetType(GroupBox)) Then

Dim leslibelles(l_controls.Controls.Count / 2) As String
Dim lesvaleurs(l_controls.Controls.Count / 2) As String

For Each l_controls2 In l_controls.Controls
If (l_controls2.Name = "Newvaleurs" & (i).ToString()) Then
lesvaleurs(i) = l_controls2.Text
leslibelles(i) = l_controls2.Tag.Text

i = i + 1
End If
Next
End If
Next
End Sub
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
16
Date d'inscription
samedi 28 octobre 2000
Statut
Membre
Dernière intervention
24 septembre 2012

voici mon source , et je voudrais à l'aide d'un second bouton, lire les valeurs qui ont été changer dans les textbox pour les ré-écrire dans le fichier xml

Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim xml_fichier As New GabXML(TextBox1.Text)
Dim nb_elts As Integer = xml_fichier.countElements("/INI/PARAMETRE")

Dim groupe As New GroupBox
groupe.Text = xml_fichier.getAttribute("/INI/PARAMETRE", "module")
groupe.Top = 50
groupe.Left = 16
groupe.Height = 20
groupe.Width = 330
TabPage2.Controls.Add(groupe)

For i As Integer = 0 To nb_elts - 1

Dim libelle As New Label
libelle.Name = "Newlibelle" + (i).ToString() 'defini le nom du text
libelle.Text = xml_fichier.getElementValue("/INI/PARAMETRE/LIBELLE", i)
libelle.Width = 150 'on defini la taille horizontale
libelle.Height = 25 'on defini la taille verticale
libelle.Top = 20 + i * libelle.Height
libelle.Left = 10

groupe.Controls.Add(libelle)

Dim valeurs As New TextBox
valeurs.Name = "Newvaleurs" + (i).ToString() 'defini le nom du text
valeurs.Text = xml_fichier.getElementValue("/INI/PARAMETRE/VALEUR", i)
valeurs.Width = 140 'on defini la taille horizontale
valeurs.Height = 25 'on defini la taille verticale
valeurs.Top = libelle.Top - 3
valeurs.Left = libelle.Left + libelle.Width + 10

groupe.Controls.Add(valeurs)

groupe.Height = groupe.Height + libelle.Height

Next
groupe.Height = groupe.Height + 10
TabControl1.Height = groupe.Height + 90
Me.Height = TabControl1.Height + TabControl1.Top * 2 + 35
End Sub
Messages postés
966
Date d'inscription
samedi 3 avril 2004
Statut
Membre
Dernière intervention
4 mars 2010
4
En VB6 : TexteVoulu = groupe.Controls(strName).Text ' strName est le nom du contrôle ("NewValeursI"...)
Messages postés
16
Date d'inscription
samedi 28 octobre 2000
Statut
Membre
Dernière intervention
24 septembre 2012

celà ne fonctionne pas en VB.net
Messages postés
363
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
20 avril 2010
3
j'aime bien les gens qui s'auto-accepte :)



Narf