Création de TextBox lors de l'exection
Résolu
victoria ghabri
Messages postés
114
Statut
Membre
-
mli07 Messages postés 5 Statut Membre -
mli07 Messages postés 5 Statut Membre -
Bonsoir ,
Je suis entrain de faire une application en c# , a chaque fois je saisie le nombre de TextBox à créer (num_flds) ,il me crée des TextBox en nombre désiré .
Mon probléme est que je ne peut pas récupérer le contenu de ces TextBox .
Comment pourrais je récupérer le contenu de ces TxtBox crées dynamiquement.
Voici une portion du code que j'ai utulisé :
private void button3_Click(object sender, EventArgs e)
{
String[] varr = new String[7];
nbr_cli = int.Parse(textBox3.Text);
num_flds = nbr_cli;
for (int i = 0; i < num_flds; i++)
{
System.Windows.Forms.TextBox tmp = new System.Windows.Forms.TextBox();
tmp.Name = "answer_box" + i;
array_name[i] = tmp.Name;
tmp.Left = 90;
tmp.Top = 206 + (i * 20);
tmp.Width = 41;
tmp.Height = 20;
tmp.TabIndex = 10 + i;
tmp.Location = new System.Drawing.Point(131, 12 + i * 22);
tmp.Size = new System.Drawing.Size(100, 20);
panel3.Controls.Add(tmp);
}
}
merci de me répondre :)
Je suis entrain de faire une application en c# , a chaque fois je saisie le nombre de TextBox à créer (num_flds) ,il me crée des TextBox en nombre désiré .
Mon probléme est que je ne peut pas récupérer le contenu de ces TextBox .
Comment pourrais je récupérer le contenu de ces TxtBox crées dynamiquement.
Voici une portion du code que j'ai utulisé :
private void button3_Click(object sender, EventArgs e)
{
String[] varr = new String[7];
nbr_cli = int.Parse(textBox3.Text);
num_flds = nbr_cli;
for (int i = 0; i < num_flds; i++)
{
System.Windows.Forms.TextBox tmp = new System.Windows.Forms.TextBox();
tmp.Name = "answer_box" + i;
array_name[i] = tmp.Name;
tmp.Left = 90;
tmp.Top = 206 + (i * 20);
tmp.Width = 41;
tmp.Height = 20;
tmp.TabIndex = 10 + i;
tmp.Location = new System.Drawing.Point(131, 12 + i * 22);
tmp.Size = new System.Drawing.Size(100, 20);
panel3.Controls.Add(tmp);
}
}
merci de me répondre :)
A voir également:
- Création de TextBox lors de l'exection
- Creation de site web - Guide
- Creation de compte google - Guide
- Création de compte gmail - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
2 réponses
Bonjour,
Utilise un conteneur pour le stockage de t'es textboxs :
List<TextBox> mesTextboxs = new List<TextBox>();
Ensuite rajoute ce code après panel3.Controls.Add(tmp);
mesTextboxs.Add(tmp);
Tu auras un tableau d'objet textboxs exploitable dans ton code :)
Utilise un conteneur pour le stockage de t'es textboxs :
List<TextBox> mesTextboxs = new List<TextBox>();
Ensuite rajoute ce code après panel3.Controls.Add(tmp);
mesTextboxs.Add(tmp);
Tu auras un tableau d'objet textboxs exploitable dans ton code :)
Merciii Beaucoup mli07 :) ça a marché !!!
Pour ceux qui ont eu un problème comme le mien ,voilà un bout de code :
TextBox[] textboxlist;
textboxlist = new TextBox[7];
for (int i = 0; i < num_flds; i++)
{
TextBox tmp = new TextBox();
tmp.Left = 90;
tmp.Top = 206 + (i * 20);
tmp.Width = 41;
tmp.Height = 20;
tmp.TabIndex = 10 + i;
tmp.Location = new System.Drawing.Point(131, 12 + i * 22);
tmp.Size = new System.Drawing.Size(100, 20);
textboxlist.SetValue(tmp, i);
panel3.Controls.Add(tmp);
}
/*dans une autre fonction */
for (int i = 0; i < num_flds; i++)
{
array_time[i] = textboxlist[i].Text;
}
Pour ceux qui ont eu un problème comme le mien ,voilà un bout de code :
TextBox[] textboxlist;
textboxlist = new TextBox[7];
for (int i = 0; i < num_flds; i++)
{
TextBox tmp = new TextBox();
tmp.Left = 90;
tmp.Top = 206 + (i * 20);
tmp.Width = 41;
tmp.Height = 20;
tmp.TabIndex = 10 + i;
tmp.Location = new System.Drawing.Point(131, 12 + i * 22);
tmp.Size = new System.Drawing.Size(100, 20);
textboxlist.SetValue(tmp, i);
panel3.Controls.Add(tmp);
}
/*dans une autre fonction */
for (int i = 0; i < num_flds; i++)
{
array_time[i] = textboxlist[i].Text;
}