Heim > Backend-Entwicklung > C++ > Wie zeige ich das Hauptformular nach erfolgreicher Anmeldung in einer Windows Forms-Anwendung an, ohne die App zu schließen?

Wie zeige ich das Hauptformular nach erfolgreicher Anmeldung in einer Windows Forms-Anwendung an, ohne die App zu schließen?

Linda Hamilton
Freigeben: 2025-01-10 07:01:44
Original
234 Leute haben es durchsucht

How to Show the Main Form After Successful Login in a Windows Forms Application Without Closing the App?

Zeigen Sie das Hauptformular nach erfolgreicher Anmeldung an, ohne die Anwendung zu verlassen

In Windows Forms-Anwendungen wird das Programm normalerweise durch Schließen des Hauptformulars beendet. In einigen Fällen müssen Sie jedoch möglicherweise das Anmeldeformular schließen und das Hauptformular starten, ohne die Anwendung zu beenden. Dieser Artikel untersucht dieses Problem und bietet eine Lösung.

Frage:

Ein Benutzer erstellt ein Windows Forms-Projekt, das zwei Formulare enthält: ein Anmeldeformular und ein Hauptformular. Nach erfolgreicher Anmeldung besteht das Ziel darin, das Anmeldeformular zu schließen und das Hauptformular anzuzeigen. Durch das Schließen des Anmeldeformulars mit der Methode Close() wird jedoch nicht das Hauptformular geöffnet und die Anwendung wird beendet.

<code class="language-c#">public void ShowMain()
{
    if (auth())
    {
        var main = new Main();
        main.Show();
        this.Close();
    }
    else
    {
        MessageBox.Show("Invalid login details.");
    }
}</code>
Nach dem Login kopieren

Lösung:

Das Problem besteht darin, dass beim Schließen des Anmeldeformulars auch die Anwendung geschlossen wird. Die Lösung besteht darin, die Anmeldelogik vom Anmeldeformular in die Datei Program.cs zu verschieben. Starten Sie dann nach erfolgreicher Anmeldung das Hauptformular mit Application.Run().

<code class="language-c#">static void Main()
{
    LoginForm fLogin = new LoginForm();
    if (fLogin.ShowDialog() == DialogResult.OK)
    {
        Application.Run(new MainForm());
    }
    else
    {
        Application.Exit();
    }
}</code>
Nach dem Login kopieren

Erstellen Sie in Program.cs ein modales Anmeldeformular (fLogin) und zeigen Sie es als Dialogfeld an. Wenn der Benutzer gültige Anmeldeinformationen angibt, gibt ShowDialog() DialogResult.OK zurück und löst die Erstellung einer neuen MainForm-Instanz über Application.Run() aus. Andernfalls wird die Anwendung beendet (Application.Exit()).

Das obige ist der detaillierte Inhalt vonWie zeige ich das Hauptformular nach erfolgreicher Anmeldung in einer Windows Forms-Anwendung an, ohne die App zu schließen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage