Freigeben über


Application.Startup Ereignis

Definition

Tritt auf, wenn die Run() Methode des Application Objekts aufgerufen wird.

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

Ereignistyp

Beispiele

Das folgende Beispiel zeigt, wie Sie Befehlszeilenoptionen aus einer eigenständigen Anwendung abrufen und verarbeiten. Wenn der Befehlszeilenparameter "/StartMinimized " bereitgestellt wurde, öffnet die Anwendung das Hauptfenster in einem minimierten Zustand.

<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 (XBAPs) können Befehlszeilenargumente nicht abrufen und verarbeiten, da sie mit der ClickOnce-Bereitstellung gestartet werden (siehe Bereitstellen einer WPF-Anwendung (WPF)). Sie können jedoch Abfragezeichenfolgenparameter aus den URLs abrufen und verarbeiten, die zum Starten verwendet werden.

Hinweise

Eine typische Windows Presentation Foundation-Anwendung kann beim Starten eine Vielzahl von Initialisierungsaufgaben ausführen, darunter:

  • Verarbeiten von Befehlszeilenparametern.

  • Öffnen des Hauptfensters.

  • Initialisieren von Anwendungsbereichsressourcen.

  • Initialisieren von Anwendungsbereichseigenschaften.

Sie können das Hauptfenster und anwendungsbezogene Ressourcen deklarativ mit XAML (StartupUri bzw Resources. ) angeben. Manchmal können die Ressourcen oder das Hauptfenster Ihrer Anwendung jedoch nur programmgesteuert zur Laufzeit bestimmt werden. Darüber hinaus können Anwendungsbereichseigenschaften und Befehlszeilenparameter nur programmgesteuert verwendet werden. Die programmgesteuerte Initialisierung kann durch behandeln des Startup Ereignisses ausgeführt werden, einschließlich der folgenden:

  • Abrufen und Verarbeiten von Befehlszeilenparametern, die über die Args Eigenschaft der StartupEventArgs Klasse verfügbar sind, die an den Startup Ereignishandler übergeben wird.

  • Initialisieren Sie Anwendungsbereichsressourcen mithilfe der Resources Eigenschaft.

  • Initialisieren Sie Anwendungsbereichseigenschaften mithilfe der Properties Eigenschaft.

  • Instanziieren Sie ein (oder mehrere) Fenster, und zeigen Sie es an.

Hinweis

Befehlszeilenparameter können auch durch Aufrufen der statischen GetCommandLineArgs Methode des Environment Objekts abgerufen werden. Erfordert jedoch voll GetCommandLineArgs vertrauenswürdige Ausführung.

Wenn Sie die Verwendung von XAML festlegenStartupUri, steht das erstellte Hauptfenster erst nach dem Startup Verarbeiten des Ereignisses aus der MainWindow Eigenschaft oder der Windows Eigenschaft des Application Objekts zur Verfügung. Wenn Sie während des Startvorgangs Zugriff auf das Hauptfenster benötigen, müssen Sie manuell ein neues Fensterobjekt aus dem Startup Ereignishandler erstellen.

Hinweis

Wenn Ihre Anwendung CredentialPolicy zum Angeben einer Anmeldeinformationsrichtlinie verwendet wird, müssen Sie nach Startup dem Auslösen festlegenCredentialPolicy. Andernfalls legt WPF sie direkt nach dem Auslösen des Startup Ereignisses auf eine interne Standardrichtlinie fest.

Die Befehlszeilenargumente, die an den Startup Ereignishandler übergeben werden, entsprechen nicht den URL-Abfragezeichenfolgenparametern, die an eine XAML-Browseranwendung (XBAP) übergeben werden.

Gilt für:

Weitere Informationen