2010-10-08 2 views
2

Когда пользователь закрывает мое приложение, я хотел бы запросить их с подтверждением, если они имеют несохраненные изменения, и отменить закрытие приложения, если они указывают на это. Событие «Выход» не позволяет аннулировать. Есть какой-либо способ сделать это?Отмена выхода приложения Silverlight OOB?

ответ

3

Поймать Заключительное событие MainWindow вместо:

App.Current.MainWindow.Closing += MainWindow_Closing; 

Затем вы можете установить свойство Cancel истину в обработчике события, если необходимо:

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 –

+0

Привет Крис ... Я всегда, кажется, получаю странности в SL;) В любом случае - это не работает для меня - событие никогда не срабатывает (я пробовал его в App.cs и MainPage. Я посмотрел ссылку выше (Matt) и попробовал IApplicationService, но это не способ отменить событие. не могут спросить пользователя, хотят ли они отменить, когда они нажимают кнопку «Закрыть» при запуске OOB (доверенный) ... – Rodney

+0

Привет, Родни. Хм, не уверен. Возможно, у вас есть код, демонстрирующий проблему, которую вы можете отправить мне Посмотрите на? –