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

Определение

Получает или задает главное окно приложения.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

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

Window, определяющееся, как лавное окно приложения.A Window that is designated as the main application window.

Исключения

MainWindow устанавливается из приложения, находящегося в браузере, например, XAML-приложения браузера (XBAP)XAML browser applications (XBAPs).MainWindow is set from an application that's hosted in a browser, such as an XAML-приложения браузера (XBAP)XAML browser applications (XBAPs).

Примеры

В следующем примере показано, как найти главное окно приложения.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

В следующем примере показано, как задать MainWindow с XAMLXAMLпомощью.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>

В следующем примере показано, MainWindow как создать экземпляр в коде во время запуска приложения.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

Комментарии

MainWindowавтоматически устанавливается со ссылкой на первый Window объект, для которого создается экземпляр AppDomainв.MainWindow is automatically set with a reference to the first Window object to be instantiated in the AppDomain.

Можно указать другое главное окно, задав MainWindow для MainWindow свойства значение другого Windows объекта.You can specify a different main window by setting MainWindow assigning another Windows object to the MainWindow property.

ShutdownMode Если свойство Application объекта имеет значение OnMainWindowClose, закрытие главного окна приведет к завершению работы приложения.If the ShutdownMode property of the Application object is set to OnMainWindowClose, closing the main window causes the application to shut down.

MainWindow Свойство можно установить из XAMLXAML, если главное окно приложения не является окном, созданным путем задания StartupUri свойства в XAMLXAML.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. Существуют два ограничения XAMLXAML этого подхода.The two limitations of the XAMLXAML approach are:

  • В NavigationWindow качестве главного окна можно XAMLXAMLуказать только Window или XAMLXAML.You can specify either a XAMLXAML-only Window or a XAMLXAML-only NavigationWindow as the main window.

  • Необходимо задать Visibility свойство указанного окна, в противном случае оно не будет показано.You must set the Visibility property of the window you specify, otherwise it won't be shown.

Ссылка на первый Window объект, для которого создается экземпляр, также добавляется в качестве первого элемента Windows в коллекцию.The reference to the first Window object to be instantiated is also added as the first item to the Windows collection. Если MainWindow в дальнейшем задается ссылка на другой Windowобъект, то позиция элемента со ссылкой на главное окно изменится, а порядок элементов Windows останется прежним.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. Следовательно, всегда используйте MainWindow для ссылки на главное окно, а не на первый элемент в Windows.Consequently, always use MainWindow to refer to the main window instead of the first item in Windows.

Примечание

NavigationWindowЕсли главное окно —, и требуется специальный доступ к NavigationWindow элементам, необходимо присвоить значение MainWindow NavigationWindowтипу.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.

Это свойство доступно только из потока, в котором был создан Application объект.This property is available only from the thread that created the Application object.

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

Дополнительно