次の方法で共有


Application.Run メソッド

定義

Windows Presentation Foundation アプリケーションを起動します。

オーバーロード

Run(Window)

Windows Presentation Foundation アプリケーションを起動し、指定したウィンドウを開きます。

Run()

Windows Presentation Foundation アプリケーションを起動します。

Run(Window)

Windows Presentation Foundation アプリケーションを起動し、指定したウィンドウを開きます。

public:
 int Run(System::Windows::Window ^ window);
[System.Security.SecurityCritical]
public int Run (System.Windows.Window window);
public int Run (System.Windows.Window window);
[<System.Security.SecurityCritical>]
member this.Run : System.Windows.Window -> int
member this.Run : System.Windows.Window -> int
Public Function Run (window As Window) As Integer

パラメーター

window
Window

アプリケーションの起動時に自動的に開く Window

戻り値

アプリケーションのシャットダウン時にオペレーティング システムに返される Int32 アプリケーション終了コード。 既定では、終了コードの値は 0 です。

属性

例外

Run() は、ブラウザーでホストされるアプリケーション (XAML ブラウザー アプリケーション (XBAP) など) から呼び出されます。

次の例は、Runを呼び出す前に、Applicationをインスタンス化する、手動で作成された静的エントリ ポイント メソッドを持つアプリケーションを示しています。

using System;
using System.Windows;

namespace CSharp
{
    public class EntryPoint
    {
        // All WPF applications should execute on a single-threaded apartment (STA) thread
        [STAThread]
        public static void Main()
        {
            Application app = new Application();
            app.Run(new Window());
        }
    }
}

Imports System.Windows

Namespace VisualBasic
    Public Class EntryPoint
        ' All WPF applications should execute on a single-threaded apartment (STA) thread
        <STAThread()>
              Public Shared Sub Main()
            Dim app As New Application()
            app.Run(New Window())
        End Sub
    End Class
End Namespace

注釈

このオーバーロードにより、Run メソッドが拡張され、アプリケーションの実行が開始された後、指定したウィンドウが開きます。

実行中にウィンドウを開くコード Application を定義する場合は、Runを明示的に呼び出します。

マークアップまたはマークアップと分離コードを使用して Application を作成する場合は、次のいずれかの手法を使用してウィンドウを自動的に開くことができます。

  • 宣言によって、StartupUriを設定します。

  • プログラムによって、Startupを処理します。

こちらもご覧ください

適用対象

Run()

Windows Presentation Foundation アプリケーションを起動します。

public:
 int Run();
public int Run ();
member this.Run : unit -> int
Public Function Run () As Integer

戻り値

アプリケーションのシャットダウン時にオペレーティング システムに返される Int32 アプリケーション終了コード。 既定では、終了コードの値は 0 です。

例外

Run() は、ブラウザーでホストされるアプリケーション (XAML ブラウザー アプリケーション (XBAP) など) から呼び出されます。

次の例は、カスタム Application を使用するため、Runを明示的に呼び出す必要があるアプリケーションを示しています。

using System;
using System.Windows;

namespace CSharp
{
    public class EntryPoint1
    {
        // All WPF applications should execute on a single-threaded apartment (STA) thread
        [STAThread]
        public static void Main()
        {
            CustomApplication app = new CustomApplication();
            app.Run();
        }
    }

    public class CustomApplication : Application
    {
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            Window window = new Window();
            window.Show();
        }
    }
}

Imports System.Windows

Namespace VisualBasic
    Public Class EntryPoint
        ' All WPF applications should execute on a single-threaded apartment (STA) thread
        <STAThread()>
              Public Shared Sub Main()
            Dim app As New CustomApplication()
            app.Run()
        End Sub
    End Class

    Public Class CustomApplication
        Inherits Application
        Protected Overrides Sub OnStartup(ByVal e As StartupEventArgs)
            MyBase.OnStartup(e)

            Dim window As New Window()
            window.Show()
        End Sub
    End Class
End Namespace

注釈

Run は、WPF アプリケーションを起動するために呼び出されます。 マークアップまたはマークアップと分離コードを使用して Application を定義すると、Run は暗黙的に呼び出されます。 ただし、コードを使用して Application を定義する場合は、Runを明示的に呼び出す必要があります。

Run が呼び出されると、新しい Dispatcher インスタンス Application UI スレッドにアタッチされます。 次に、Dispatcher オブジェクトの Run メソッドが呼び出され、ウィンドウ メッセージを処理するためのメッセージ ポンプが開始されます。 最後に、Dispatcher オブジェクトは、Application オブジェクトの OnStartup メソッドを呼び出して、Startup イベントを発生させます。 その結果、アプリケーション実行モデルは、Startupを処理する時点までに確立され、その時点でアプリケーションが実行されていると見なされます。

Shutdown が呼び出されると、アプリケーションの実行が停止します。ShutdownMode プロパティの値は、Shutdown が呼び出されるタイミングと、それが自動的に発生するか、明示的に呼び出す必要があるかを決定します。

Run は、Application オブジェクトを作成するスレッドからのみ呼び出すことができます。 また、XBAP から Run を呼び出すことはできません。

こちらもご覧ください

適用対象