ユーザーが少なくとも 1 回はアプリを終了したときに、ユーザーの注意を引く必要があるアプリがあります。だから私はメッセージボックスを表示するために以下のコードを取得します。私が知らないのは、ユーザーがメッセージを読んだ場合にアプリを実際に終了するにはどうすればよいですか? バックキーイベントは常に呼び出しに来るように見えるので (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();
}
}