Lire en anglais

Partager via


Application.Startup Événement

Définition

Se produit lorsque la méthode Run() de l'objet Application est appelée.

C#
public event System.Windows.StartupEventHandler Startup;

Type d'événement

Exemples

L’exemple suivant montre comment acquérir et traiter des options de ligne de commande à partir d’une application autonome. Si le paramètre de ligne de commande /StartMinimized a été fourni, l’application ouvre la fenêtre main dans un état réduit.

XAML
<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" />
C#
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();
        }
    }
}

Les applications de navigateur XAML (XBAPs) ne peuvent pas récupérer et traiter les arguments de ligne de commande, car elles sont lancées avec le déploiement ClickOnce (voir Déploiement d’une application WPF (WPF)). En revanche, ils peuvent récupérer et traiter des paramètres de chaîne de requête à partir des URL servant à les lancer.

Remarques

Une application Windows Presentation Foundation standard peut effectuer diverses tâches d’initialisation au démarrage, notamment :

  • Traitement des paramètres de ligne de commande.

  • Ouverture de la fenêtre main.

  • Initialisation des ressources d’étendue d’application.

  • Initialisation des propriétés d’étendue d’application.

Vous pouvez spécifier de manière déclarative la fenêtre main et les ressources d’étendue d’application à l’aide de XAML (StartupUri et Resources, respectivement). Toutefois, parfois, les ressources ou main fenêtre de votre application ne peuvent être déterminées que par programmation au moment de l’exécution. En outre, les propriétés d’étendue d’application et les paramètres de ligne de commande ne peuvent être utilisés que par programmation. L’initialisation par programmation peut être effectuée en gérant l’événement Startup , notamment les éléments suivants :

  • Acquérir et traiter les paramètres de ligne de commande, qui sont disponibles à partir de la Args propriété de la StartupEventArgs classe qui est passée au gestionnaire d’événements Startup .

  • Initialisez des ressources d’étendue d’application à l’aide de la Resources propriété .

  • Initialisez les propriétés d’étendue d’application à l’aide de la Properties propriété .

  • Instanciez et affichez une (ou plusieurs) fenêtres.

Note

Les paramètres de ligne de commande peuvent également être acquis en appelant la méthode statique GetCommandLineArgs de l’objet Environment . Toutefois, GetCommandLineArgs nécessite une confiance totale pour s’exécuter.

Si vous définissez StartupUri à l’aide de XAML, la fenêtre main créée n’est pas disponible à partir de la MainWindow propriété ou de la Windows propriété de l’objet Application tant qu’après le traitement de l’événementStartup. Si vous avez besoin d’accéder à la fenêtre main au démarrage, vous devez créer manuellement un objet fenêtre à partir de votre Startup gestionnaire d’événements.

Note

Si votre application utilise CredentialPolicy pour spécifier une stratégie d’informations d’identification, vous devez définir CredentialPolicy après Startup est déclenché ; sinon, WPF la définit sur une stratégie interne par défaut directement après que l’événement Startup a été déclenché.

Les arguments de ligne de commande passés au Startup gestionnaire d’événements ne sont pas les mêmes que les paramètres de chaîne de requête d’URL qui sont passés à une application de navigateur XAML (XBAP).

S’applique à

Produit Versions
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Voir aussi