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 アプリケーション終了コード。 終了コードの既定値は 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 メソッドが呼び出され、ウィンドウ メッセージを処理するためのメッセージ ポンプが開始されます。 最後に、 オブジェクトは 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 アプリケーション終了コード。 終了コードの既定値は 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

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

  • を設定 StartupUriして宣言的に。

  • を処理 Startupすることによって、プログラムによって。

こちらもご覧ください

適用対象