Kopiowanie forma C#

Witam.

Mam taki problem. Mam zrobiony formularz. Do obiektów w formularzu odwołuje się wiadomo jak textBox1.costam itp…

Chciałbym ten formularz skopiować ale na zasadzie żeby wsadzić go w jakiś kontener i następnie odwoływać się do elementów wewnątrz np. tak kontener.textBox1. I teraz jest problem bo chciałbym mieć w programie zakładki, każda zakładka ma taką samą zawartość. Chciałbym żeby to działało na zasadzie

wczytaj_dane()

{

for(int =0;i
{

dane[i] = zakładki[i].textBox1.Text;

}

}

ma ktoś jakiś pomysł ?

Ja mam.

Najpierw podaj o jaki język Ci w ogóle chodzi.

Rzeczywiście nie podałem… Chodzi o C#.

Wszystkie kontrolki kontenera można znaleźć w kolekcji Controls, i odwoływać się do nich po indeksach bądź właściwości Name.

Jak rozumiem chcesz użyć TabControl, żeby mieć te zakładki. Nie może być jednak dwóch TextBoxów o takim samym Name na dwóch rożnych zakładkach - nazwy muszą być unikalne.

Tu przykład metody, która zwraca tablicę stringów z tekstami umieszczonymi w TextBoxach, które należą do kontrolki przekazanej w parametrze, może Cię to naprowadzi:

string[] GetTextData(Control parent)

{

    List result = new List();

    //.NET 2.0

    foreach (Control c in parent.Controls)

        if (c is TextBox)

            result.Add(c.Text);

    //.NET 3.5

    //foreach (TextBox t in parent.Controls.OfType())

    // result.Add(t.Text);

    return result.ToArray();

}

Chodzi mi o to że chce mieć 15 zakładek identycznych - kropka w kropkę takich samych dlatego najwygodniej byłoby mi się odwoływać właśnie tak gdzie nazwy były by te same. Gdy mam dwa formularze to mogę mieć te same nazwy. Wtedy mógłbym odwołać się do informacji zawartych w tych zakładkach zwyczajnie poprzez numer zakładki tablica_zakladek[numer_zakladki].textBox1.Text. Ale widocznie będę musiał się posłużyć dynamicznym generowaniem pól zawartych w zakładkach i najwyżej jakoś je po prostu nazwę.

Nadal nie chcesz napisać, co konkretnie chcesz osiągnąć, a wydaje mi się, że utrudniasz sobie życie…

Nie możesz po prostu zrobić UserControl zawierającą ileś tych TextBoxów i umieszczać te własne kontrolki na kolejnych “zakładkach”? Myślę, że będzie to łatwiejsze i bardziej prawidłowe rozwiązanie. Do tego upublicznić Text kolejnych TextBoxów w formie właściwości UserControl, bądź zwrócić całość danych poprzez jakąś inną metodę/właściwość - bo skoro pobierasz ileś danych tekstowych od użytkownika, to chyba trafiają one do jakiegoś obiektu służącego do przekazywania danych w Twoim programie, prawda?