[ Mr. Rejn @ 06.08.2007. 10:26 ] @
Mislim da sam već postavljao slično pitanje,ali se ono odnosilo na komunikaciju između MDI
formi,ovo se odnosi na komunikaciju između ne-mdi formi.

Problem:imam formu koja se prikazuje sa ShowDialog() na Load događaju glavne forme.Efekat je
takav da se prvo pojavi glavna forma,pa odmah zatim ova dijalog forma,preko koje se ulazi na
glavnu formu (popunjavanjem nekih polja,ona nestaje i ostaje glavna forma).Ova
"dijalog" forma nije MDI dete glavne forme.

Pitanje je kako da iz koda ove "dijalog" forme delujem na kontrole glavne forme,npr. da prikažem
toolbar na glavnoj formi i sl.?

Dalje kako da koristim kontrole ovog dijaloga na drugim formama (a one su MDI deca te glavne forme),
jer konkretno na ovom dijalogu imam konekciju za sql server,pa hoću da je koristim u drugim formama
u programu.

Jezik je C#.

Deki.
[ jablan @ 06.08.2007. 10:48 ] @
Citat:
Mr. Rejn: Pitanje je kako da iz koda ove "dijalog" forme delujem na kontrole glavne forme,npr. da prikažem
toolbar na glavnoj formi i sl.?

Prosledi referencu na glavnu formu u dijalog formu.

Citat:
Dalje kako da koristim kontrole ovog dijaloga na drugim formama (a one su MDI deca te glavne forme),
jer konkretno na ovom dijalogu imam konekciju za sql server,pa hoću da je koristim u drugim formama
u programu.

Napravi base form klasu koju će sve tvoje forme da nasleđuju.
[ dusty @ 06.08.2007. 15:20 ] @
Imas overload-ovane metode Show/ShowDialog sa jednim parametrom owner. Posle referenci glavne forme pristupas preko property-a Parent.
[ Mr. Rejn @ 06.08.2007. 16:22 ] @
Epa da odgovorim sebi,koliko da pitanje ne ostane da visi u vazduhu :)

Iz glavne forme na Load() prikazi modalno "dijalog" formu:
Code:

Dijalog dlg = new Dijalog();
dlg.Owner = this;
dlg.ShowDialog();

promeni stanje kontrole glavne-Owner forme iz koda "dijaloga":
Code:

((MainForm)this.Owner).toolbar.visible=true;




[Ovu poruku je menjao Mr. Rejn dana 07.08.2007. u 15:30 GMT+1]
[ prog @ 12.08.2007. 16:54 ] @
Kada se tice konekcije za sql varijablu stavi u resurs aplikacije tako da ce ti biti dostupna u svim formama aplikacije.
[ toxi_programer @ 12.08.2007. 20:23 ] @
Ja mislim da bi organizovanije bilo ako bi koristio Evente za to. Dakle da ta dete-forma ima dodatne evente koji će da se pozivaju kad to bude potrebno. Mislim da je to više u OOP fazonu
A i deluje mi logičnije - kod za prikazivanje dodatnih kontrola na glavnoj formi ćeš pisati u toj glavnoj formi a onda ga možeš pozvati iz bilo koje druge forme. Meni to deluje bolje organizovano nego da šalješ referencu svakoj od child formi...