2010-10-08 100 views
2

當用戶關閉我的應用程序時,如果他們有未保存的更改,我希望能夠提示他們確認,如果他們表示這樣做,則取消應用程序的關閉。應用程序的退出事件不允許取消。有沒有辦法做到這一點?取消Silverlight OOB應用程序退出?

回答

3

趕上主窗口的關閉事件,而不是:

App.Current.MainWindow.Closing += MainWindow_Closing; 

然後你可以設置必要時在事件處理程序取消屬性設置爲true:

private void MainWindow_Closing(object sender, System.ComponentModel.ClosingEventArgs e) 
{ 
    e.Cancel = true; 
} 

希望這有助於...

Chris

+0

我還發現了這個問題,它解釋了爲什麼這不適合我。 http://stackoverflow.com/questions/3591446/mainwindow-closing-event-not-always-raised-in-silverlight-4-oob-app – 2010-10-11 12:38:45

+0

嗨克里斯...我似乎總是得到SL的怪異;)無論如何 - 這對我不起作用 - 事件永遠不會觸發(我已經在App.cs和MainPage中嘗試過了,我查看了上面的鏈接(Matt)並嘗試了IApplicationService,但沒有辦法取消該事件。在運行OOB(可信)時,如果他們想要取消當他們點擊關閉按鈕時,他們不能問這個用戶... – Rodney 2011-03-28 01:38:50

+0

Hi Rodney。嗯,不知道。你可能有任何代碼證明你可以發送給我的問題看看? – 2011-03-29 05:45:41

相關問題