次の方法で共有


方法 : メイン アプリケーション ウィンドウを取得および設定する

この例では、メイン アプリケーション ウィンドウを取得および設定する方法を示します。

使用例

Windows Presentation Foundation (WPF) アプリケーション内で最初にインスタンス化される Window が、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="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://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;