您遇到的問題來自於WPF管理關機的方式。
您可以通過...
Application.Current.ShutdownMode
更改關機行爲 ...財產。將其更改爲approriate值:
Application.Current.ShutdownMode = System.Windows.ShutdownMode.OnLastWindowClose;
這將幫助。
另一種方法是手動將MainWindow
屬性設置爲您的第二個窗口。
如果您只想製作閃屏,請使用自.NET 3.51起可用的splashscreen選項。 IT的優勢在於,它可以在應用程序加載序列的早期階段加載,早於窗口即可加載。
要做到這一點,打開您的項目資源管理器的圖像的屬性選項卡,並設置生成操作到閃屏
更新
在一個我應用程序我有一個設計,在顯示主窗口之前還必須顯示模態對話框。此時我並不知道ShutdownMode
-property。
我做的是我第一次開始Window
,這是用戶不可見的。這是第一個窗口,它也控制了app-livetime(WPF的默認行爲)。從這個窗口中,我打開了所需的對話框(一個顯示模式的窗口)。如果此對話框已完成不成功,我終止了隱藏窗口並完全關閉應用程序。如果對話結果正常,我創建了第一個MainWindow實例,用戶可以使用它。
來源
2010-07-22 15:15:18
HCL
不,沒有幫助。但看來,我排除了這種情況。我隱藏窗口,它有助於某種原因。 – 2010-07-23 09:00:21
我認爲你必須刪除StartupURI並手動打開表單。然而你所描述的也是一種可能的方式(我也用它來解決類似的問題)。但只是作爲一個建議,如果你唯一的願望是顯示關於應用程序啓動的信息,請考慮使用splash-screen-option。它在應用程序開始時顯示,在加載fat程序集之前,因此它的使用會爲您的應用程序帶來更好的用戶體驗。 – HCL 2010-07-23 09:50:58
不,關於對話框只是一個例子,抱歉有誤導性。它將是LogonDialog。 – 2010-07-23 10:12:04