2012-01-26 32 views
4

我有一個簡單的WPF應用程序,它具有通常的靜態Main()(應用程序入口點)。 Main會在UI顯示之前做一些初始化的東西。然後它將創建並運行啓動窗口。但是,我需要做的是將一個自定義的對象從main傳遞到啓動Window,但我不知道如何去做。包含main()的將參數傳遞給WPF中的StartupUri

我的主類看起來是這樣的:

class App : Application 
{ 
    [STAThread()] 
    static void Main() 
    { 
     MyObject obj; 
     // Some processing stuff here. 

     new App(obj); 
    } 

    public App(MyObject obj) 
    { 
     StartupUri = new System.Uri("MainWindow.xaml", UriKind.Relative); 
     Run(); 
    } 
} 

顯然,MyObject是我的自定義對象,我想有在我啓動窗口訪問。我怎樣才能做到這一點?

TIA

回答

3

MyObject類型的參數添加到您的MainWindow構造函數(或屬性,如果你喜歡),然後手動創建你的窗口。只需使用Run的超負荷參數Window而不是使用啓動URI將此窗口顯示爲主窗口。

Run(new MainWindow(obj));