Практическое руководство. Получение и установка основного окна приложения

В этом примере демонстрируется получение и установка основного окна приложения.

Пример

Первое Window, созданное в приложении Windows Presentation Foundation (WPF) автоматически задается Application как окно основного приложения. Первое Window скорее всего будет окном, определенным как открываемое при запуске uniform resource identifier (URI) (см. StartupUri).

Первое Window также может быть создано в коде. Примером является открытие окна во время запуска приложения следующим образом:

    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
public partial class App : Application
{
    void App_Startup(object sender, StartupEventArgs e)
    {
        MainWindow window = new MainWindow();
        window.Show();
    }
}

Иногда первый экземпляр Window фактически не является основным окном приложения, например экраном-заставкой. В этом случае можно указать основное окно приложения с помощью разметки следующим образом:

<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 с помощью следующего фрагмента кода:

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