Maison développement back-end Tutoriel C#.Net La différence entre C# Show() et ShowDialog()

La différence entre C# Show() et ShowDialog()

Feb 25, 2017 am 10:53 AM

Affichage A.Form dans WinForm
Il existe deux méthodes pour afficher un formulaire :
Méthode Form.ShowDialog (le formulaire est affiché sous forme modale)
Méthode Form.Show (le formulaire est affiché est un formulaire non mode)

Les différences spécifiques entre les deux sont les suivantes :
1 Après avoir appelé la méthode Form.Show, le code suivant la méthode Show sera exécuté immédiatement
2. appeler la méthode Form.ShowDialog Enfin, le code derrière cette méthode n'est exécuté qu'après la fermeture de la boîte de dialogue

Petite note :

1. Après l'affichage modal, le
pop. -up window bloque toutes les réponses aux messages de la fenêtre appelante.
La fenêtre d'appel ne peut continuer qu'après la fin de la fenêtre contextuelle.
Une fois la fenêtre modale "fermée", vous pouvez lire les informations dans la fenêtre modale, y compris l'état de retour de la fenêtre et les valeurs des sous-contrôles de la fenêtre.


Explication de showdialog sur MSDN :

Lorsque le formulaire est affiché sous forme de boîte de dialogue modale, cliquez sur le bouton "Fermer" (le bouton avec un X dans le coin supérieur droit de le formulaire) le masquera et définira la propriété DialogResult sur DialogResult.Cancel. Contrairement aux formulaires non modes, le .NET Framework n'appelle pas la méthode Close lorsque l'utilisateur clique sur le bouton Fermer le formulaire de la boîte de dialogue ou définit la valeur de la propriété DialogResult. Le formulaire peut ensuite être masqué et réaffiché sans créer une nouvelle instance de la boîte de dialogue. Étant donné qu'un formulaire affiché sous forme de boîte de dialogue n'est pas fermé, vous devez appeler la méthode Dispose du formulaire lorsque votre application n'a plus besoin du formulaire.

C'est-à-dire que lorsque la fenêtre non modale est fermée, la méthode close sera appelée, puis la méthode dispose sera appelée pour recycler les ressources de la fenêtre, donc après. la fenêtre est fermée, les informations de la fenêtre ne peuvent pas être obtenues. Lorsque la fenêtre modale est fermée, ni la méthode close ni la méthode dispose ne seront appelées. La fenêtre existe toujours et occupe des ressources, vous pouvez donc continuer à obtenir des informations relatives à la fenêtre. Lorsque la fenêtre n'est plus utilisée, elle doit le faire. être libéré manuellement


2. Après un affichage non modal,
peut basculer entre la fenêtre contextuelle et la fenêtre d'appel à volonté.
Après avoir appelé la méthode show dans la fenêtre appelante, le code suivant peut être exécuté immédiatement.
Une fois la fenêtre non modale fermée, toutes les ressources de la fenêtre sont libérées, la fenêtre n'existe pas et aucune information sur la fenêtre ne peut être obtenue.

3. Par conséquent, lorsque le formulaire à afficher utilise le mode singleton, une fois chaque show terminé, après la fermeture() du formulaire, le deuxième show apparaîtra : Accès impossible à un libéré. objet. Nom de l'objet : "XXXX". À ce stade, close() doit être modifié pour masquer le formulaire.

Ce qui précède est la différence entre C# Show() et ShowDialog() Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Active Directory avec C# Active Directory avec C# Sep 03, 2024 pm 03:33 PM

Guide d'Active Directory avec C#. Nous discutons ici de l'introduction et du fonctionnement d'Active Directory en C# ainsi que de la syntaxe et de l'exemple.

Modificateurs d'accès en C# Modificateurs d'accès en C# Sep 03, 2024 pm 03:24 PM

Guide des modificateurs d'accès en C#. Nous avons discuté de l'introduction Types de modificateurs d'accès en C# ainsi que d'exemples et de résultats.

Générateur de nombres aléatoires en C# Générateur de nombres aléatoires en C# Sep 03, 2024 pm 03:34 PM

Guide du générateur de nombres aléatoires en C#. Nous discutons ici du fonctionnement du générateur de nombres aléatoires, du concept de nombres pseudo-aléatoires et sécurisés.

Vue Grille de données C# Vue Grille de données C# Sep 03, 2024 pm 03:32 PM

Guide de la vue Grille de données C#. Nous discutons ici des exemples de la façon dont une vue de grille de données peut être chargée et exportée à partir de la base de données SQL ou d'un fichier Excel.

Modèles en C# Modèles en C# Sep 03, 2024 pm 03:33 PM

Guide des modèles en C#. Nous discutons ici de l'introduction et des 3 principaux types de modèles en C# ainsi que de ses exemples et de l'implémentation du code.

Sérialisation C# Sérialisation C# Sep 03, 2024 pm 03:30 PM

Guide de sérialisation C#. Nous discutons ici de l'introduction, des étapes de l'objet de sérialisation C#, du fonctionnement et de l'exemple respectivement.

Nombres premiers en C# Nombres premiers en C# Sep 03, 2024 pm 03:35 PM

Guide des nombres premiers en C#. Nous discutons ici de l'introduction et des exemples de nombres premiers en c# ainsi que de l'implémentation du code.

Services Web en C# Services Web en C# Sep 03, 2024 pm 03:32 PM

Guide des services Web en C#. Nous discutons ici d'une introduction aux services Web en C# avec l'utilisation de la technologie, ses limitations et des exemples.

See all articles