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


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 (XBAP).

Примеры

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

// 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 свойству MainWindow другой Windows объект.

Если свойству ShutdownModeApplication объекта присвоено значение OnMainWindowClose, закрытие главного окна приводит к закрытию приложения.

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

  • В качестве главного окна можно указать только XAML Window или XAML-only NavigationWindow .

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

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

Примечание

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

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

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

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