2017-06-22 41 views

答えて

1

あなたはApp.xaml.csファイルを編集し、OnStartup方法オーバーライドすることができます:

public partial class App : Application 
{ 
    protected override void OnStartup(StartupEventArgs e) 
    { 
     string[] args = e.Args; 
     if(args.Length > 0 && args[0] == "cl") 
     { 
      //... 
     } 
     else 
     { 
      base.OnStartup(e); 
      Window2 mainWindow = new Window2(); 
      mainWindow.Show(); 
     } 
    } 
} 

あなたはまた、App.xamlファイルの<Application>ルート要素からStartupUri属性を削除する必要があります。

しかし、あなたは、あなたが手動でコンソールウィンドウを作成する必要がコンソールに書くことができるようにしたい場合:

No output to console from a WPF application?

その後、あなたにもVisual Studioでコンソールアプリケーションを作成して、代わりにあなたを開始する可能性がありますコマンドライン引数に基づくWPFアプリケーション。例:

public class Program 
{ 
    public static void Main(string[] args) 
    { 
     if (args.Length == 0 || args[0] != "cl") 
     { 
      System.Diagnostics.Process.Start(@"c:\yourWpfApp.exe"); 
     } 
     else 
     { 
      //... 
     } 
    } 
} 

コンソールアプリケーションはWPFアプリケーションではなく、その逆もあります。したがって、2つの異なるアプリケーションを作成します。

0

App.xaml.csにはOnStartupメソッドが実装されています。したがって、コマンドラインで渡された引数にアクセスできます。

protected override void OnStartup(StartupEventArgs e) 
{ 
    var args = e.Args; 
    // do anything with arguments 
} 
関連する問題