Freigeben über


Öffnen eines Fensters oder Dialogfelds

Sie können eigene Fenster erstellen und in Windows Presentation Foundation (WPF) anzeigen. In diesem Artikel erfahren Sie, wie Sie modale und moduslose Fenster und Dialogfelder anzeigen.

Konzeptionell sind ein Fenster und ein Dialogfeld identisch: Sie werden einem Benutzer angezeigt, um Informationen oder Interaktionen bereitzustellen. Sie sind beide "Fenster"-Objekte. Der Entwurf des Fensters und die Art und Weise, wie es verwendet wird, ist das, was ein Dialogfeld macht. Ein Dialogfeld ist in der Regel klein und erfordert, dass der Benutzer darauf reagiert. Weitere Informationen finden Sie in der Übersicht über WPF-Fenster und Dialogfelder.

Wenn Sie daran interessiert sind, Dialogfelder des Betriebssystems zu öffnen, erfahren Sie, wie Sie ein allgemeines Dialogfeld öffnen.

Als modal öffnen

Wenn ein modales Fenster geöffnet wird, stellt es in der Regel ein Dialogfeld dar. WPF schränkt die Interaktion auf das modale Fenster ein, und der Code, der das Fenster geöffnet hat, wird angehalten, bis das Fenster geschlossen wird. Dieser Mechanismus bietet eine einfache Möglichkeit, um den Benutzer mit Daten aufzufordern und auf seine Antwort zu warten.

Verwenden Sie die ShowDialog Methode, um ein Fenster zu öffnen. Der folgende Code instanziiert das Fenster und öffnet es modal. Der Code, der das Fenster öffnet, wird angehalten, bis das Fenster geschlossen wird:

var window = new Margins();

window.Owner = this;
window.ShowDialog();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.ShowDialog()

Von Bedeutung

Nachdem ein Fenster geschlossen wurde, kann die gleiche Objektinstanz nicht zum erneuten Öffnen des Fensters verwendet werden.

Weitere Informationen zum Behandeln der Benutzerantwort auf ein Dialogfeld finden Sie in der Übersicht über Dialogfelder: Verarbeiten der Antwort.

Als Modus ohne Modus öffnen

Das Öffnen eines Fenstermodus bedeutet, dass es als normales Fenster angezeigt wird. Der Code, mit dem das Fenster geöffnet wird, wird weiterhin ausgeführt, wenn das Fenster sichtbar wird. Sie können sich ohne Einschränkung mit allen moduslosen Fenstern konzentrieren und interagieren, die von Ihrer Anwendung angezeigt werden.

Verwenden Sie die Show Methode, um ein Fenster zu öffnen. Der folgende Code instanziiert das Fenster und öffnet es modellfrei. Der Code, der das Fenster öffnet, wird weiterhin ausgeführt:

var window = new Margins();

window.Owner = this;
window.Show();
Dim myWindow As New Margins()

myWindow.Owner = Me
myWindow.Show()

Von Bedeutung

Nachdem ein Fenster geschlossen wurde, kann die gleiche Objektinstanz nicht zum erneuten Öffnen des Fensters verwendet werden.

Siehe auch