Application.Run メソッド

定義

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

オーバーロード

Run()

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

Run(Window)

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

Run()

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

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

戻り値

Int32

アプリケーションのシャットダウン時にオペレーティング システムに返される 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 アプリケーションを起動するために呼び出されます。 using マークアップまたはマークアップと分離コードを Application 定義すると、 Run 暗黙的に呼び出されます。 ただし、using コードを定義する Application 場合は、明示的に呼び出す Run必要があります。

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

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

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

こちらもご覧ください

適用対象

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

アプリケーションのシャットダウン時にオペレーティング システムに返される 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します。

こちらもご覧ください

適用対象