我有一个应用程序需要在用户退出应用程序至少一次时引起用户的注意。所以我得到下面的代码来显示一个消息框。我不知道的是,如果用户已经阅读了消息,我该如何真正退出应用程序?因为似乎后退键事件总是会出现在我设置的呼叫(OnBackKeyPress)或者什么是处理显示消息框而不弄乱覆盖BackKey的好方法?因为如果屏幕上有另一个弹出窗口并且用户按下了后退键,那么如果我尝试自己处理后退键,我似乎遇到了一些异常。
我的理想情况是,一旦她/他按下消息框的退出按钮,应用程序就会立即关闭。如果按下取消,它将返回而不退出。请帮忙。谢谢!
我用过的东西……但效果不好
private void OnBackKeyPressed(object sender, CancelEventArgs e)
{
e.Cancel = true;
CheckBox checkBox = new CheckBox()
{
Content = "Do not ask me again",
Margin = new Thickness(0, 14, 0, -2)
};
TiltEffect.SetIsTiltEnabled(checkBox, true);
CustomMessageBox messageBox = new CustomMessageBox()
{
Caption = "Would you like to stop and exit?",
Message =
"If you want to continue listen music while doing other stuff, please use Home key instead of Back key",
Content = checkBox,
LeftButtonContent = "Exit",
RightButtonContent = "Cancel",
};
messageBox.Dismissed += (s1, e1) =>
{
switch (e1.Result)
{
case CustomMessageBoxResult.LeftButton: //Exit
return;// What to do here??
case CustomMessageBoxResult.RightButton: //Cancel
case CustomMessageBoxResult.None:
break;
default:
break;
}
};
messageBox.Show();
}
}