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 -
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 :)

2 réponses

  1. mli07 Messages postés 5 Statut Membre 2
     
    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 :)
    1
  2. victoria ghabri Messages postés 114 Statut Membre 5
     
    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;

    }
    0
    1. mli07 Messages postés 5 Statut Membre 2
       
      De rien ;)
      0