J'essaie de créer une application WPF qui accepte les arguments de la ligne de commande. Si aucun argument n'est fourni, la fenêtre principale doit s'afficher. Dans le cas de certains arguments de ligne de commande spécifiques, le code devrait être exécuté sans interface graphique et sortir une fois terminé. Toute suggestion sur la manière de procéder serait la bienvenue.
Réponses
Trop de publicités?Tout d'abord, trouvez cet attribut en haut de votre fichier App.xaml et supprimez-le :
StartupUri="Window1.xaml"
Cela signifie que l'application ne va pas automatiquement instancier votre fenêtre principale et l'afficher.
Ensuite, remplacez la méthode OnStartup dans votre classe App pour exécuter la logique :
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
if ( /* test command-line params */ )
{
/* do stuff without a GUI */
}
else
{
new Window1().ShowDialog();
}
this.Shutdown();
}
GeekyMonkey
Points
5036
Satish Tatikonda
Points
1
Vous pouvez utiliser les éléments ci-dessous dans app.xaml.cs
fichier :
private void Application_Startup(object sender, StartupEventArgs e)
{
MainWindow WindowToDisplay = new MainWindow();
if (e.Args.Length == 0)
{
WindowToDisplay.Show();
}
else
{
string FirstArgument = e.Args[0].ToString();
string SecondArgument = e.Args[1].ToString();
//your logic here
}
}