Maison > développement back-end > C++ > Comment afficher le formulaire principal après une connexion réussie dans une application Windows Forms sans fermer l'application ?

Comment afficher le formulaire principal après une connexion réussie dans une application Windows Forms sans fermer l'application ?

Linda Hamilton
Libérer: 2025-01-10 07:01:44
original
202 Les gens l'ont consulté

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

Afficher le formulaire principal après une connexion réussie sans quitter l'application

Dans les applications Windows Forms, la fermeture du formulaire principal termine généralement le programme. Cependant, dans certains cas, vous devrez peut-être fermer le formulaire de connexion et lancer le formulaire principal sans terminer l'application. Cet article explore ce problème et propose une solution.

Question :

Un utilisateur crée un projet Windows Forms qui contient deux formulaires : un formulaire de connexion et un formulaire principal. Après une connexion réussie, l'objectif est de fermer le formulaire de connexion et d'afficher le formulaire principal. Cependant, la fermeture du formulaire de connexion à l'aide de la méthode Close() n'ouvre pas le formulaire principal et l'application se termine.

<code class="language-c#">public void ShowMain()
{
    if (auth())
    {
        var main = new Main();
        main.Show();
        this.Close();
    }
    else
    {
        MessageBox.Show("Invalid login details.");
    }
}</code>
Copier après la connexion

Solution :

Le problème est que la fermeture du formulaire de connexion ferme également l'application. La solution consiste à déplacer la logique de connexion du formulaire de connexion vers le fichier Program.cs. Ensuite, lancez le formulaire principal après une connexion réussie à l'aide de 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>
Copier après la connexion

Dans Program.cs, créez et affichez un formulaire de connexion modal (fLogin) sous forme de boîte de dialogue. Si l'utilisateur fournit des informations d'identification valides, ShowDialog() renverra DialogResult.OK, déclenchant la création d'une nouvelle instance MainForm via Application.Run(). Sinon, l'application se fermera (Application.Exit()).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal