Vidim o čemu pričaš, ali ja sam mislio sljedeće: umjesto da imam jedan panel u koji ću da stavljam forme koje kasnije moram pojedinačno da brišem, ja bih da napravim dva panela (panel za dodavanje i panel za pretragu) koja ću (pri njihovom kreiranju) da napunim formama , a kad budem trebao da ih smijenim samo njih zatvorim i unistim a garbage collector da odradi ostalo:
ne obraćajte pažnju na sintaksu jer sam ovo napisao sad, nisam kopirao iz IDE-a. Ideja je važna :D
Code:
private System.Windows.Forms.Panel dodajPanel; //ovo je panel koji sadrži forme za dodavanje novog člana
private System.Windows.Forms.Panel pretragaPanel; //ovaj sadrži forme za pretragu
private void kreirajDodajPanel()
{
this.dodajPanel = new System.Windows.Forms.Panel();
this.dodajPanel.SuspendLayout();
//e sad ovdje pravim nove instance raznih formi: nekoliko dugmadi, textbox-ova i label-a (20-tak njih)
//i stavljam ih na ovaj panel
this.Controls.Add(this.panel1);
this.dodajPanel.ResumeLayout(false);
this.dodajPanel.PerformLayout();
}
private void kreirajPretragaPanel()
{
//Da ne pišem, ista stvar kao kod prethodne funkcije
}
Isto mi treba nečija potvrda da ja ovo ispravno radim.
Npr. u jednom trenutku mi je u programu prikazan panel za pretragu. Ja pritisnem dugme za dodavanje novog člana koje ima od prilike ovakav event handler:
Code:
//prije ovoga naravno ispitujem da li je prikazan panel za pretragu, u suprotnom ne bi radilo
this.pretragaPanel.Dispose();
kreirajDodajPanel();
There are 10 types of people: those who understand binary and those who have
friends...