Application.Startup Gebeurtenis

Definitie

Treedt op wanneer de Run() methode van het Application object wordt aangeroepen.

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

Gebeurtenistype

Voorbeelden

In het volgende voorbeeld ziet u hoe u opdrachtregelopties verkrijgt en verwerkt vanuit een zelfstandige toepassing. Als de opdrachtregelparameter /StartMinimized is opgegeven, opent de toepassing het hoofdvenster met een geminimaliseerde status.

<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

XBAPs (XAML-browsertoepassingen) kunnen opdrachtregelargumenten niet ophalen en verwerken omdat deze worden gestart met ClickOnce-implementatie (zie Deploying a WPF Application (WPF)). Ze kunnen echter queryreeksparameters ophalen en verwerken uit de URL's die worden gebruikt om ze te starten.

Opmerkingen

Een typische Windows Presentation Foundation-toepassing kan verschillende initialisatietaken uitvoeren wanneer deze wordt gestart, waaronder:

  • Opdrachtregelparameters verwerken.

  • Het hoofdvenster openen.

  • Resources voor toepassingsbereik initialiseren.

  • Eigenschappen van toepassingsbereik initialiseren.

U kunt declaratief het hoofdvenster en de toepassingsbereikbronnen opgeven met XAML (StartupUri en Resourcesrespectievelijk). Soms kunnen de resources of het hoofdvenster van uw toepassing echter alleen programmatisch worden bepaald tijdens runtime. Bovendien kunnen eigenschappen van toepassingsbereik en opdrachtregelparameters alleen programmatisch worden gebruikt. Programmatische initialisatie kan worden uitgevoerd door de Startup gebeurtenis te verwerken, waaronder de volgende:

  • Opdrachtregelparameters verkrijgen en verwerken, die beschikbaar zijn vanuit de Args eigenschap van de StartupEventArgs klasse die wordt doorgegeven aan de Startup gebeurtenis-handler.

  • Initialiseer resources binnen het toepassingsbereik met behulp van de Resources eigenschap.

  • Initialiseer eigenschappen van toepassingsbereik met behulp van de Properties eigenschap.

  • Instantieer en geef een (of meer) vensters weer.

Note

Opdrachtregelparameters kunnen ook worden verkregen door de statische GetCommandLineArgs methode van het Environment object aan te roepen. GetCommandLineArgs Vereist echter dat volledig vertrouwen wordt uitgevoerd.

Als u StartupUri instelt met behulp van XAML, is het hoofdvenster dat wordt gemaakt, niet beschikbaar vanuit de eigenschap MainWindow of de eigenschap Windows van het Application-object totdat de gebeurtenis Startup is verwerkt. Als u tijdens het opstarten toegang nodig hebt tot het hoofdvenster, moet u handmatig een nieuw vensterobject maken vanuit uw Startup gebeurtenis-handler.

Note

Als uw toepassing CredentialPolicy gebruikt om een referentiebeleid op te geven, moet u CredentialPolicy instellen nadat Startup is gegenereerd; anders wordt WPF ingesteld op een intern standaardbeleid direct nadat de gebeurtenis Startup is gegenereerd.

De opdrachtregelargumenten die worden doorgegeven aan de Startup gebeurtenis-handler, zijn niet hetzelfde als de URL-queryreeksparameters die worden doorgegeven aan een XAML-browsertoepassing (XBAP).

Van toepassing op

Zie ook