Application.MainWindow Application.MainWindow Application.MainWindow Application.MainWindow Property

Definition

Ruft das Hauptfenster der Anwendung ab oder legt dieses fest.Gets or sets the main window of the application.

public:
 property System::Windows::Window ^ MainWindow { System::Windows::Window ^ get(); void set(System::Windows::Window ^ value); };
public System.Windows.Window MainWindow { get; set; }
member this.MainWindow : System.Windows.Window with get, set
Public Property MainWindow As Window

Eigenschaftswert

Ein Window, das als Hauptanwendungsfenster festgelegt ist.A Window that is designated as the main application window.

Ausnahmen

MainWindow wird von einer in einem Browser gehosteten Anwendung festgelegt, z. B. XAML-Browseranwendungen (XAML browser applications; XBAPs)XAML browser applications (XBAPs).MainWindow is set from an application that's hosted in a browser, such as an XAML-Browseranwendungen (XAML browser applications; XBAPs)XAML browser applications (XBAPs).

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie das Hauptanwendungsfenster suchen.The following example shows how to find the main application window.

// Get the main window
Window mainWindow = this.MainWindow;
' Get the main window
Dim mainWindow As Window = Me.MainWindow

Im folgenden Beispiel wird gezeigt, wie MainWindow mithilfe XAMLXAMLvon festgelegt wird.The following example shows how to set MainWindow using XAMLXAML.

<Application 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="StartupWindow.xaml"
    >
  <Application.MainWindow>
    <NavigationWindow Source="MainPage.xaml" Visibility="Visible"></NavigationWindow>
  </Application.MainWindow>
</Application>

Im folgenden Beispiel wird gezeigt, wie das im Code MainWindow während des Anwendungs Starts instanziiert wird.The following example shows how to instantiate the MainWindow in code during application startup.

public partial class App : Application
{
    void App_Startup(object sender, StartupEventArgs e)
    {
        MainWindow window = new MainWindow();
        window.Show();
    }
}
Partial Public Class App
    Inherits Application
    Private Sub App_Startup(ByVal sender As Object, ByVal e As StartupEventArgs)
        Dim window As New MainWindow()
        window.Show()
    End Sub
End Class

Hinweise

MainWindowwird automatisch mit einem Verweis auf das erste Window Objekt festgelegt, das in der AppDomaininstanziiert werden soll.MainWindow is automatically set with a reference to the first Window object to be instantiated in the AppDomain.

Sie können ein anderes Hauptfenster angeben, indem MainWindow Sie der Windows MainWindow Eigenschaft ein anderes Objekt zuweisen.You can specify a different main window by setting MainWindow assigning another Windows object to the MainWindow property.

Wenn die ShutdownMode -Eigenschaft Application des-Objekts auf OnMainWindowClosefestgelegt ist, wird das Schließen des Hauptfensters bewirkt, dass die Anwendung beendet wird.If the ShutdownMode property of the Application object is set to OnMainWindowClose, closing the main window causes the application to shut down.

Es MainWindow ist möglich, die-Eigenschaft von XAMLXAMLfestzulegen, wenn das Hauptfenster einer Anwendung nicht das Fenster ist, das durch Festlegen der StartupUri - XAMLXAMLEigenschaft in erzeugt wird.It is possible to set the MainWindow property from XAMLXAML, if an application's main window is not the window that is produced by setting the StartupUri property in XAMLXAML. Die folgenden beiden Einschränkungen gelten XAMLXAML für die Vorgehensweise:The two limitations of the XAMLXAML approach are:

  • XAMLXAMLSie können entweder ein Window -oder ein XAMLXAML-only NavigationWindow als Hauptfenster angeben.You can specify either a XAMLXAML-only Window or a XAMLXAML-only NavigationWindow as the main window.

  • Sie müssen die Visibility -Eigenschaft des von Ihnen angegebenen Fensters festlegen. andernfalls wird Sie nicht angezeigt.You must set the Visibility property of the window you specify, otherwise it won't be shown.

Der Verweis auf das erste Window Objekt, das instanziiert werden soll, wird der Auflistung auch als erstes Windows Element hinzugefügt.The reference to the first Window object to be instantiated is also added as the first item to the Windows collection. Wenn MainWindow anschließend mit einem Verweis auf einen anderen WindowWert festgelegt wird, ändert sich die Position des Elements mit dem Verweis auf das Hauptfenster, während die Reihenfolge der Windows Elemente in unverändert bleibt.If MainWindow is subsequently set with a reference to a different Window, the position of the item with the reference to the main window will change, while the order of items in Windows remains the same. Verwenden MainWindow Sie daher immer, um auf das Hauptfenster anstelle des ersten Elements in Windowszu verweisen.Consequently, always use MainWindow to refer to the main window instead of the first item in Windows.

Hinweis

Wenn NavigationWindowdas Hauptfenster eine ist und Sie bestimmten Zugriff auf NavigationWindow Member benötigen, müssen Sie den Wert von MainWindow in NavigationWindowumwandeln.If the main window is a NavigationWindow, and you need specific access to NavigationWindow members, you will need to cast the value of MainWindow to NavigationWindow.

Diese Eigenschaft ist nur in dem Thread verfügbar, von dem Application das Objekt erstellt wurde.This property is available only from the thread that created the Application object.

Gilt für:

Siehe auch