Application.Startup イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Run() オブジェクトの Application メソッドが呼び出されると発生します。
public:
event System::Windows::StartupEventHandler ^ Startup;
public event System.Windows.StartupEventHandler Startup;
member this.Startup : System.Windows.StartupEventHandler
Public Custom Event Startup As StartupEventHandler
イベントの種類
例
次の例は、スタンドアロン アプリケーションからコマンド ライン オプションを取得して処理する方法を示しています。 /StartMinimized コマンド ライン パラメーターが指定されている場合、アプリケーションは最小化された状態でメイン ウィンドウを開きます。
<Application
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="SDKSample.App"
Startup="App_Startup" />
using System.Windows;
namespace SDKSample
{
public partial class App : Application
{
void App_Startup(object sender, StartupEventArgs e)
{
// Application is running
// Process command line args
bool startMinimized = false;
for (int i = 0; i != e.Args.Length; ++i)
{
if (e.Args[i] == "/StartMinimized")
{
startMinimized = true;
}
}
// Create main application window, starting minimized if specified
MainWindow mainWindow = new MainWindow();
if (startMinimized)
{
mainWindow.WindowState = WindowState.Minimized;
}
mainWindow.Show();
}
}
}
Imports System.Windows
Namespace SDKSample
Partial Public Class App
Inherits Application
Private Sub App_Startup(ByVal sender As Object, ByVal e As StartupEventArgs)
' Application is running
' Process command line args
Dim startMinimized As Boolean = False
Dim i As Integer = 0
Do While i <> e.Args.Length
If e.Args(i) = "/StartMinimized" Then
startMinimized = True
End If
i += 1
Loop
' Create main application window, starting minimized if specified
Dim mainWindow As New MainWindow()
If startMinimized Then
mainWindow.WindowState = WindowState.Minimized
End If
mainWindow.Show()
End Sub
End Class
End Namespace
XAML ブラウザー アプリケーション (XBAP) は、ClickOnce 配置で起動されるため、コマンド ライン引数を取得および処理できません (「 WPF アプリケーションの配置 (WPF)」を参照してください)。 ただし、起動に使用される URL のクエリ文字列パラメーターを取得して処理することはできます。
注釈
一般的なWindows Presentation Foundation アプリケーションでは、起動時に次のようなさまざまな初期化タスクを実行できます。
コマンド ライン パラメーターの処理。
メイン ウィンドウを開きます。
アプリケーション スコープ リソースの初期化。
アプリケーション スコープのプロパティを初期化しています。
XAML (StartupUri と Resources) を使用して、メイン ウィンドウとアプリケーション スコープ リソースを宣言的に指定できます。 ただし、アプリケーションのリソースまたはメインウィンドウは、実行時にプログラムによってのみ決定できる場合があります。 さらに、アプリケーション スコープのプロパティとコマンド ライン パラメーターは、プログラムでのみ使用できます。 プログラムによる初期化は、次のようなイベントを Startup 処理することによって実行できます。
イベント ハンドラーに渡されるクラスの プロパティから Args 使用できるコマンド ライン パラメーターを StartupEventArgs 取得して Startup 処理します。
プロパティを使用して、アプリケーション スコープのリソースを Resources 初期化します。
プロパティを使用して、アプリケーション スコープのプロパティを Properties 初期化します。
インスタンス化し、1 つ以上のウィンドウを表示します。
注意
コマンド ライン パラメーターは、 オブジェクトの静的 GetCommandLineArgs メソッド Environment を呼び出すことによって取得することもできます。 ただし、 GetCommandLineArgs 実行するには完全信頼が必要です。
XAML を使用してを設定StartupUriした場合、作成されたメイン ウィンドウは、イベントが処理されるまでStartup、 オブジェクトの Application プロパティまたは Windows プロパティからMainWindow使用できません。 起動時にメイン ウィンドウにアクセスする必要がある場合は、イベント ハンドラーから新しいウィンドウ オブジェクトを手動で作成する必要がありますStartup。
注意
アプリケーションで を使用CredentialPolicyして資格情報ポリシーを指定する場合は、 が発生した後Startupに を設定CredentialPolicyする必要があります。それ以外の場合は、イベントが発生した直後に WPF によって既定のStartup内部ポリシーに設定されます。
イベント ハンドラーに Startup 渡されるコマンド ライン引数は、XAML ブラウザー アプリケーション (XBAP) に渡される URL クエリ文字列パラメーターと同じではありません。
適用対象
こちらもご覧ください
.NET