Freigeben über


Window.Show Methode

Definition

Öffnet ein Fenster und gibt zurück, ohne darauf zu warten, dass das neu geöffnete Fenster geschlossen wird.

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

Ausnahmen

Show() wird für ein Fenster aufgerufen, das geschlossen (Closing) oder geschlossen wurde (Closed).

Beispiele

Im folgenden Beispiel wird das Öffnen eines moduslosen Fensters veranschaulicht.

// 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()

Hinweise

Wenn die Window Klasse instanziiert wird, ist sie standardmäßig nicht sichtbar. Show zeigt ein Fenster an und gibt sofort zurück, ohne darauf zu warten, dass das Fenster geschlossen wird. Folglich verhindert das geöffnete Fenster nicht, dass Benutzer mit anderen Fenstern in der Anwendung interagieren. Dieser Fenstertyp wird als modusloses Fenster bezeichnet. Häufige Beispiele für moduslose Fenster sind Eigenschaftenfenster, Toolboxen und Paletten. Um die Interaktion eines Benutzers mit einem bestimmten Fenster einzuschränken, muss das Fenster durch Aufrufen ShowDialoggeöffnet werden.

Ein Durch Aufrufen Show geöffnetes Fenster verfügt nicht automatisch über eine Beziehung zu dem Fenster, das es geöffnet hat. Insbesondere weiß das geöffnete Fenster nicht, welches Fenster es geöffnet hat. Diese Beziehung kann mithilfe der Owner Eigenschaft hergestellt und mithilfe der OwnedWindows Eigenschaft verwaltet werden.

Durch aufrufen Show wird dasselbe Endergebnis wie das Festlegen Visibility der Eigenschaft des Window Objekts auf Visible. Es gibt jedoch einen Unterschied zwischen den beiden aus zeitlicher Sicht.

Das Aufrufen Show ist ein synchroner Vorgang, der nur nach dem Auslösen des Loaded Ereignisses im untergeordneten Fenster zurückgegeben wird:

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.")

Das Festlegen Visibilityist jedoch ein asynchroner Vorgang, der sofort zurückgegeben wird:

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.")

Bei der Einstellung Visibilitywerden alle Fensterereignisse, die Sie vor dem Festlegen registrieren, möglicherweise erst ausgelöst, nachdem die von Ihnen festgelegte VisibilityVisibility Methode die Ausführung abgeschlossen hat.

Gilt für:

Weitere Informationen