Odwołanie od wielu TextBox-ów

0

Witam
Mam problem ze sprawnym odwołaniem się do wielu obiektów TextBox.
W aplikacji istnieje ok 20 TextBox-ów (TextBox1 .... TextBox20)
Potrzebuję stworzyć funkcję przypisującą do odpowiedniego textbox-a odpowiednią wartość z tablicy
np: TextBox1.Text=tekst[1]
I teraz pytanie jak dynamicznie zmienić obiekt aby tekst[2] trafił do TextBox2 ??
i tak dalej dla dowolnego parametru będącego identyfikatorem elementu tablicy i jednocześnie numerem TextBox-a ?
Użycie switch chyba nie jest najwydajniejszą metodą, poza tym wygląda nieelegancko :).
Z góry dzięki za sugestie.

1
TextBox[] tekstboksy = new TextBox[] {TextBox1, TextBox2, TextBox3, TextBox4, TextBox5, ... };
0
         var textBoxes = new List<TextBox>(); 

         for (int i = 0; i < 20; i++)
         {
            textBoxes.Add(new TextBox { Location = new Point(0, 20 * i) });
            Controls.Add(textBoxes[i]);
         }

         var strings = new List<string>();

         for (int i = 0; i < 20; i++)
         {
            strings.Add(i.ToString(CultureInfo.InvariantCulture));
            textBoxes[i].Text = strings[i];
         }
0

Dzięki, dopadło mnie jakieś zaćmienie :)

0

Można też nie utrudniać sobie życia tablicą, skoro kolekcja kontrolek formy już i tak istnieje:

var textBoxes = this.Controls.OfType<TextBox>().OrderBy(t => t.Name).ToArray();
for (int i = 0; i < textBoxes.Length; i++)
{
    textBoxes[i].Text = tekst[i];
}
0

Kolekcję textboksów proponuję trzymać jako pole klasy, nie ma potrzeby jej generowania na nowo za każdym razem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1