Application.Startup Application.Startup Application.Startup Application.Startup Event

Definition

Tritt auf, wenn die Run()-Methode des Application-Objekts aufgerufen wird.Occurs when the Run() method of the Application object is called.

public:
 event System::Windows::StartupEventHandler ^ Startup;
public event System.Windows.StartupEventHandler Startup;
member this.Startup : System.Windows.StartupEventHandler 
Public Custom Event Startup As StartupEventHandler 

Beispiele

Im folgenden Beispiel wird gezeigt, wie Befehlszeilenoptionen aus einer eigenständigen Anwendung abgerufen und verarbeitet werden.The following example shows how to acquire and process command-line options from a standalone application. Wenn der /StartMinimized -Befehlszeilenparameter angegeben wurde, öffnet die Anwendung das Hauptfenster in einem minimierten Zustand.If the /StartMinimized command-line parameter was provided, the application opens the main window in a minimized state.

<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-Browseranwendungen (XAML browser applications; XBAPs)XAML browser applications (XBAPs)Befehlszeilenargumente können nicht abgerufen und verarbeitet werden, da Sie mit ClickOnceClickOnce der Bereitstellung gestartet werden (siehe bereitstellen einer WPF-Anwendung (WPF)).cannot retrieve and process command-line arguments because they are launched with ClickOnceClickOnce deployment (see Deploying a WPF Application (WPF)). Von den zum Starten verwendeten URLs können jedoch Abfragezeichenfolgenparameter abgerufen und verarbeitet werden.However, they can retrieve and process query string parameters from the URLs that are used to launch them.

Hinweise

Eine typische Windows Presentation Foundation Anwendung kann beim Start eine Reihe von Initialisierungs Aufgaben ausführen, einschließlich:A typical Windows Presentation Foundation application may perform a variety of initialization tasks when it starts up, including:

  • Verarbeiten von Befehlszeilen Parametern.Processing command-line parameters.

  • Das Hauptfenster wird geöffnet.Opening the main window.

  • Ressourcen für den Anwendungsbereich werden initialisiert.Initializing application-scope resources.

  • Die Eigenschaften des Anwendungsbereichs werden initialisiert.Initializing application-scope properties.

Sie können das Hauptfenster und die Anwendungsbereichs Ressourcen deklarativ mithilfe XAMLXAML von Resources(StartupUri bzw.) angeben.You can declaratively specify the main window and application-scope resources using XAMLXAML (StartupUri and Resources, respectively). Manchmal können die Ressourcen oder das Hauptfenster der Anwendung jedoch nur Programm gesteuert zur Laufzeit bestimmt werden.Sometimes, however, the resources or main window of your application can only be determined programmatically at run time. Darüber hinaus können Anwendungsbereichs Eigenschaften und Befehlszeilenparameter nur Programm gesteuert verwendet werden.Additionally, application-scope properties and command-line parameters can only be used programmatically. Die programmgesteuerte Initialisierung kann ausgeführt werden, Startup indem Sie das-Ereignis behandeln, einschließlich der folgenden:Programmatic initialization can be performed by handling the Startup event, including the following:

  • Sie können Befehlszeilenparameter abrufen und verarbeiten, die über die Args -Eigenschaft StartupEventArgs der-Klasse verfügbar sind, die an Startup den-Ereignishandler übermittelt wird.Acquire and process command-line parameters, which are available from the Args property of the StartupEventArgs class that is passed to the Startup event handler.

  • Initialisieren Sie Ressourcen im Anwendungsbereich mithilfe der Resources -Eigenschaft.Initialize application-scope resources by using the Resources property.

  • Initialisieren Sie die Eigenschaften des Anwendungsbereichs mithilfe Properties der-Eigenschaft.Initialize application-scope properties by using the Properties property.

  • Instanziieren Sie ein (oder mehrere) Fenster, und zeigen Sie es an.Instantiate and show one (or more) windows.

Hinweis

Befehlszeilenparameter können auch durch Aufrufen der statischen GetCommandLineArgs -Methode Environment des-Objekts abgerufen werden.Command-line parameters can also be acquired by calling the static GetCommandLineArgs method of the Environment object. Erfordert jedoch GetCommandLineArgs volle Vertrauenswürdigkeit, um ausgeführt werden zu können.However, GetCommandLineArgs requires full trust to execute.

Wenn Sie mit StartupUri XAMLXAMLfestlegen, ist das Hauptfenster, das erstellt wird, nicht in der MainWindow -Eigenschaft oder Windows der-Eigenschaft Application des-Objekts verfügbar Startup , bis das-Ereignis verarbeitet wurde.If you set StartupUri using XAMLXAML, the main window that is created is not available from either the MainWindow property or the Windows property of the Application object until after the Startup event is processed. Wenn Sie während des Starts auf das Hauptfenster zugreifen müssen, müssen Sie manuell ein neues Fenster Objekt aus dem Startup Ereignishandler erstellen.If you need access to the main window during startup, you need to manually create a new window object from your Startup event handler.

Hinweis

Wenn Ihre Anwendung verwendet CredentialPolicy , um eine Richtlinie für Anmelde Informationen anzugeben, müssen CredentialPolicy Sie Startup festlegen, nachdem ausgelöst wurde WPFWPF , und andernfalls auf eine interne Standard Richtlinie festlegen, Startup nachdem das-Ereignis ausgelöst wurde.If your application uses CredentialPolicy to specify a credential policy, you need to set CredentialPolicy after Startup is raised; otherwise, WPFWPF sets it to a default internal policy directly after the Startup event has been raised.

Die Befehlszeilenargumente, die an den Startup -Ereignishandler übermittelt werden, stimmen nicht mit den URLURL Abfrage Zeichen folgen Parametern überein, die XAML-Browseranwendung (XBAP)XAML browser application (XBAP)an einen-Parameter übermittelt werden.The command-line arguments that are passed to the Startup event handler are not the same as the URLURL query string parameters that are passed to an XAML-Browseranwendung (XBAP)XAML browser application (XBAP).

Gilt für:

Siehe auch