[C#] Von Form2 die Form1 schließen
lima-city → Forum → Programmiersprachen → Programmieren mit .NET & Mono
abwarten
anfang
ausblenden
beenden
benutzer
code
eigene form
form
hintergrund
programm
sekunde
starten
vermeiden
-
Ich habe ein Programm, das aus zwei Forms besteht.
Zuert läd eine Form1, von der man Form2 starten kann.
Sobald man etwas gewählt hat wird Form1 unsichtbar (bei Close(); wäre ja gleich alles weg). Wenn man dann fertig ist und die Form2 schließt wird Form1 jedoch nicht geschlossen und bleibt unsichtbar im Hintergrund, was ich vermeiden will.
Ich hab es jetzt vorläufig so gelöst, das form2 eine public bool hat, die am Anfang auf false steht und beim beenden auf true gesetzt wird. Jede Sekunde fragt ein Timer ab ob die Variable true ist und wenn ja wird Close(); ausgeführt und das Programm ist beendet.
Gibt es da nicht eine saubere Lösung? es funktioniert zwar, ich halte es aber eher für eine Notlösung. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich gehe davon aus, dass du mit .NET Framwork arbeitet...
Du kannst es doch z.B. so lösen:
Wenn der Benutzer auf die Form1 klickt, wird folgendes ausgeführt:
[in C++]
// Zuerst die eigene Form ausblenden
Form1::Hide();
// Die andere Form einblenden und abwarten, bis sie geschlossen wird:
Form2::ShowDialog();
// Die andere Form wurde geschlossen, jetzt soll Form1 auch geschlossen werden:
Form1::Close();
-
das geht ja, vielen Dank.
Ich hatte es vorher mit Form2.Visible = true gemacht.
Dann wird den Code nur eben weiter ausgeführt, weshalb ein close(); dahinter das Programm gleich schließt. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage