Partager via


Window.Show Méthode

Définition

Ouvre une fenêtre et retourne sans attendre la fermeture de la fenêtre nouvellement ouverte.

public:
 void Show();
public void Show();
member this.Show : unit -> unit
Public Sub Show ()

Exceptions

Show() est appelé sur une fenêtre fermante (Closing) ou fermée (Closed).

Exemples

L’exemple suivant montre comment ouvrir une fenêtre sans mode.

// Initialize window
Window window = new Window();

// Show window modelessly
// NOTE: Returns without waiting for window to close
window.Show();
' Initialize window
Dim window As New Window()

' Show window modelessly
' NOTE: Returns without waiting for window to close
window.Show()

Remarques

Lorsque la Window classe est instanciée, elle n’est pas visible par défaut. Show affiche une fenêtre et retourne immédiatement, sans attendre la fermeture de la fenêtre. Par conséquent, la fenêtre ouverte n’empêche pas les utilisateurs d’interagir avec d’autres fenêtres de l’application. Ce type de fenêtre est appelé fenêtre sans mode . Les exemples courants de fenêtres sans mode sont les fenêtres de propriétés, les boîtes à outils et les palettes. Pour restreindre l’interaction d’un utilisateur avec une fenêtre spécifique, la fenêtre doit être ouverte en appelant ShowDialog.

Une fenêtre ouverte en appelant Show n’a pas automatiquement de relation avec la fenêtre qui l’a ouverte ; en particulier, la fenêtre ouverte ne sait pas quelle fenêtre l’a ouverte. Cette relation peut être établie à l’aide de la Owner propriété et gérée à l’aide de la OwnedWindows propriété.

L’appel Show obtient le même résultat final que la définition Visibility de la propriété de l’objet Window sur Visible. Toutefois, il existe une différence entre les deux du point de vue du moment.

L’appel Show est une opération synchrone qui retourne uniquement une fois que l’événement Loaded sur la fenêtre enfant a été déclenché :

Window w = new Window();
w.Loaded += delegate { System.Console.WriteLine("This is written first."); };
w.Show();
System.Console.WriteLine("This is written last.");
Dim w As New Window()
AddHandler w.Loaded, Sub() System.Console.WriteLine("This is written first.")
w.Show()
System.Console.WriteLine("This is written last.")

Toutefois, la définition Visibilityest une opération asynchrone qui retourne immédiatement :

Window w2 = new Window();
w2.Loaded += delegate { System.Console.WriteLine("This is written last."); };
w2.Visibility = Visibility.Visible;
System.Console.WriteLine("This is written first.");
Dim w2 As New Window()
AddHandler w2.Loaded, Sub() System.Console.WriteLine("This is written last.")
w2.Visibility = Visibility.Visible
System.Console.WriteLine("This is written first.")

Lorsque vous définissez Visibility, tous les événements de fenêtre que vous inscrivez avant que vous ne Visibility soyez déclenchés tant que la méthode dans laquelle vous avez défini Visibility n’a pas terminé l’exécution.

S’applique à

Voir aussi