Поделиться через


Application.MainWindow Свойство

Определение

Возвращает или задает главное окно приложения.

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

Значение свойства

Объект Window , назначенный в качестве главного окна приложения.

Исключения

MainWindow устанавливается из приложения, размещенного в браузере, например приложений браузера XAML (XBAPs).

Примеры

В следующем примере показано, как найти главное окно приложения.

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

В следующем примере показано, как задать MainWindow код XAML.

<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>

В следующем примере показано, как создать экземпляр MainWindow кода во время запуска приложения.

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

Комментарии

MainWindow автоматически устанавливается со ссылкой на первый Window объект, который будет создан в объекте AppDomain.

Можно указать другое главное окно, назначив MainWindow другому Windows объекту свойству MainWindow .

ShutdownMode Если свойство Application объекта заданоOnMainWindowClose, закрытие главного окна приводит к завершении работы приложения.

Можно задать MainWindow свойство из XAML, если главное окно приложения не является окном, созданным путем задания StartupUri свойства в XAML. Ниже приведены два ограничения подхода XAML:

  • Можно указать только XAML или xaml-только WindowNavigationWindow в качестве главного окна.

  • Необходимо задать Visibility свойство указанного окна, в противном случае оно не будет отображаться.

Ссылка на первый объект, который необходимо создать, также добавляется в коллекцию в качестве первого Window элемента Windows . Если MainWindow впоследствии задана ссылка на другое Window, позиция элемента со ссылкой на главное окно изменится, а порядок элементов остается Windows неизменным. Следовательно, всегда используйте MainWindow для ссылки на главное окно вместо первого элемента в Windows.

Замечание

Если главное окно — это NavigationWindow, и вам нужен конкретный доступ к NavigationWindow членам, необходимо привести значение MainWindowNavigationWindowк .

Это свойство доступно только из потока, создавшего Application объект.

Применяется к

См. также раздел