C# windows forms - close

Programovacie jazyky, rady, poradňa...
petkio
Amateur
Amateur
Príspevky: 10
Registrovaný: 10 mar 2009, 16:37

C# windows forms - close

Príspevok od používateľa petkio »

Ahoj, robim taku windows okienkovu aplikaciu.. na zaciatku je prihlasovaci formular .. ked sa zhoduje z udajmy v DB tak ho prihlasy.. a zobrazi sa mu uz novy Form maximalizovany. Problem mam ze nvm ako mam zavriet ten prvy prihlasovaci Form. Zatial som dokazal ho len zneviditelnit (Visible = false;) , ale ked zavriem ten druhy maximalizovany form, tak aplikacia stale bezi. a zastavym hu az "Stop Debugging".

Ten druhy form viem aj zavriet:

Form2 adminForm = new Form2();
adminForm.Show();

adminForm.Close();

- ale ten prvy nie.. viete mi pls pomoct ... DAKUJEM (dufam ze sa z tohto da pochopit co potrebujem)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# windows forms - close

Príspevok od používateľa BX »

Už chvíľu som v c# neorbil, no ale nefunguje tam niečo ako this.Close() ?
petkio
Amateur
Amateur
Príspevky: 10
Registrovaný: 10 mar 2009, 16:37

Re: C# windows forms - close

Príspevok od používateľa petkio »

no funguje, ale ta mi zavrie oba formulare a ja by som potreboval len ten prvy (ktory mi zobrazi hned pri spusteni)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# windows forms - close

Príspevok od používateľa BX »

Ale veď keď si v prvom dialógu, tak zavrieš prvý (this.Close()) a za tým vytvoríš druhý (Form2 adminForm = atď)
Tam sa ti nemajú ako zavieť oba, keď ten druhý v tom čase ešte ani nebude existovať. Ak to nefunguje, tak kto vie ako to máš porobené.
petkio
Amateur
Amateur
Príspevky: 10
Registrovaný: 10 mar 2009, 16:37

Re: C# windows forms - close

Príspevok od používateľa petkio »

switch (typZamestnanca)
{
case "1":
this.Close();

Form2 adminForm = new Form2();
adminForm.Show();
adminForm.Text = priezvisko + " - Admin";

MessageBox.Show(typZamestnanca);
// this.Close();

// Visible = false;
break;
...
...

- no podla mna ked to mam hore tak to zavrie prvy form a s tym sa automaticky zavrie spustena aplikacia (a kod dalej uz ani nepokracuje) .. (ako keby som pouzil Application.Exit();)
- ked to mam dole (je to v komente) a nie hore .. tak vytvori druhy Form .. potom to zastavy messageBox.. ked dam OK.. tak zas zavrie oba Formy.. a aj spustenu aplikaciu
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# windows forms - close

Príspevok od používateľa BX »

Nemám Visual Studio, tak to nemôžem vyskúšať, ale našiel som ešte k tomu môjmu spôsobu aj toto:

Kód: Vybrať všetko

case "1":
this.Close();

Form2 adminForm = new Form2();
adminForm.Show();
adminForm.Activate();
pipadne len

Kód: Vybrať všetko

case "1":
this.Hide();

Form2 adminForm = new Form2();
adminForm.Show();
Ak už toto nepôjde, tak žiaľ neviem. Keby som mal Visual Studio, tak by som nehádal.
petkio
Amateur
Amateur
Príspevky: 10
Registrovaný: 10 mar 2009, 16:37

Re: C# windows forms - close

Príspevok od používateľa petkio »

pecka BX .. milujem ta :oops: :smt033

- prvy sposob spravy to ze vypne oba Formulare (alebo vypne prvy a na ten je naviazany druhy.. a ked vypne prvy tak oba)

- ale ten druhy sposob je prakticky to iste ako to moje (Visible = false;) ... ALE .. ked to tam dam.. a na druhom formulary vytvorim udalost na "FormClosed" a hodim tam Application.Exit();
.. tak ked to zavrem hociako vypne sa aj program nie len form

este raz DIK ze si helfol :)
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: C# windows forms - close

Príspevok od používateľa BX »

Niet zač :)
Napísať odpoveď