Benutzer mit den meisten Antworten
Dispose bei externer Form

Frage
-
Das ist vielleicht nicht ganz so verständlich, aber ich will, dass die Form Login.cs (Das ist die gerade aktive Form) mit Dispose geschlossen wird, aber die Form MainForm gezeigt wird. Weil sonst bleibt der Prozess immer bestehen und man muss ihn mit dem Task Manager beenden oder das Debugging beenden.
Hier der Code:
this.Hide(); Form1 MainForm = new Form1(); MainForm.Show();
LG Guchen
Antworten
-
Hallo Guchen,
eine Windows Forms Anwendung besteht solange, wie das Hauptfenster der Anwendung geöffnet ist. Das ist im Regelfall das Fenster, das mit Application.Run in Main (in Program.cs) geöffnet wird.
Wenn Du einen Anmelde-Dialog davor schalten willst, wie der Name vermuten lässt, solltest Du das Hauptfenster erst öffnen, wenn die Anmeldung erfolgreich abgeschlossen wurde. Den Anmelde-Dialog kannst Du in Main über ShowDialog anzeigen. Dort setzt Du nur DialogResult auf OK, wenn die Anmeldung erfolgreich war und startest das Hauptformular.
Beispiele dafür findest Du u. a. in How can I close a login form and show the main form without my application closing?
Gruß Elmar
- Als Antwort markiert Guchen Mittwoch, 2. Juli 2014 08:30
Alle Antworten
-
Hallo Guchen,
eine Windows Forms Anwendung besteht solange, wie das Hauptfenster der Anwendung geöffnet ist. Das ist im Regelfall das Fenster, das mit Application.Run in Main (in Program.cs) geöffnet wird.
Wenn Du einen Anmelde-Dialog davor schalten willst, wie der Name vermuten lässt, solltest Du das Hauptfenster erst öffnen, wenn die Anmeldung erfolgreich abgeschlossen wurde. Den Anmelde-Dialog kannst Du in Main über ShowDialog anzeigen. Dort setzt Du nur DialogResult auf OK, wenn die Anmeldung erfolgreich war und startest das Hauptformular.
Beispiele dafür findest Du u. a. in How can I close a login form and show the main form without my application closing?
Gruß Elmar
- Als Antwort markiert Guchen Mittwoch, 2. Juli 2014 08:30