Zarządzanie wieloma formami

0

Witam,
Mam pytanie, w jaki sposób zarządzacie wieloma formami w swoich programach? Trzymacie je w tablicy i obsługujecie, czy też trzymacie każde w osobnej zmiennej? A może w ogóle ich nie trzymacie i tworzycie tylko na bieżąco poprzez "new" i niszczycie zaraz po użyciu? Jak przekazujecie dane do tych form, poprzez konstruktor i każda forma przyjmuje inną klasę z danymi jako parametr, czy też może w jakiś inny sposób? Jestem ciekaw waszych pomysłów na rozwiązanie tej kwestii oraz najlepiej uzasadnienia dlaczego tak jest lepiej a nie inaczej. Zapraszam do dyskusji.

Pozdrawiam

0

Pokaz fragment kodu nad ktorym się zastanawiasz ponieważ pytanie zadane jest zbyt ogólnie

0

Wiele zależy od kontekstu/aplikacji. Jeżeli będziesz mieć form 20 na raz to proponuję MDI. W miarę wygodnie tym się operuje i parę spraw załatwionych automagicznie ;]

1

Nie dokońca o to mi chodziło, MDI to użyje swoją drogą. Chodzi mi np o coś w stylu:

static class Singleton
{
private Form mainForm;
private Form aboutForm;
private Form addContactForm;
private Form modifyContactForm;
itd...
}
 

czy też może macie to wpakowane w jakąś liste np:

static class Singleton
{
private Dictionary<string, Form> formList;
}
 

Czy też może tworzycie Form'a w chwili kiedy jest potrzebny

 
OnButtonClick()
{
Form addContact = new addContactForm();
addContact.Show();
}

i kasujecie wtedy kiedy nie jest już potrzebny.

Dodatkowo chciałem się zapytać w jaki sposób przekazujecie dane do tych Form. Przez konstruktor?
Np.

contactFormData contactData = new contactFormData();
contactData.Imie = "Jan";
Form modifyContactForm= new modifyContactForm(contactData);

I robicie tak dla każdej formy jaką posiadacie? Czy macie też inne ciekawsze sposoby? Jak w takim wypadku dostać wartość zwrotną z takiej formy np. po wykonaniu danej akcji. Pytanie brzmiało jak tym wszystkim zarządzacie przy większej ilości okienek.

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