当用户按下返回键时,我想显示一个对话框以确认退出。我知道这可以通过使用本机 MessageBox 来完成。但是,当我改用 winphone 工具包中的 CustomMessageBox 时,取消事件一旦取消就不会恢复。
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
CustomMessageBox messageBox = new CustomMessageBox()
{
Caption = "Exit",
Message = "Do you want to exit?",
LeftButtonContent = "Yes",
RightButtonContent = "No"
};
messageBox.Dismissed += (s1, e1) =>
{
switch (e1.Result)
{
case CustomMessageBoxResult.LeftButton:
//app doesn't exit as expected
e.Cancel = false;
break;
case CustomMessageBoxResult.RightButton:
break;
case CustomMessageBoxResult.None:
break;
default:
break;
}
};
messageBox.Show();
}
如果我不取消活动,应用程序将退出而不显示消息框。如果我尝试调用 Show 然后锁定线程,则不会显示消息框。我知道我可以通过使用 Terminate 或 exception 来退出应用程序,但我也希望它正确退出,以便可以调用 Application_Closing。请帮忙!感谢。