我有一个应用程序,主页包含很少的功能。详细解释 - 我在主页面中保存了调色板按钮。单击任何这些按钮时,将显示保存弹出窗口或调色板。当打开调色板或保存弹出窗口时,如何处理设备的后退按钮。在这些情况下按下后退按钮时,它应该只是让它们不可见并保持在主页面上。当主页面中没有执行任何操作时,它应该从应用程序中出来。我试图让他们的可见性在按下按钮后折叠。但它仍然在应用程序之外。
请指导我。提前谢谢。
答案 0 :(得分:1)
覆盖PhoneApplicationPage.OnBackKeyPress,然后将CancelEventArgs.Cancel
设置为true
,如果您想阻止它实际返回。
protected override void OnBackKeyPress(CancelEventArgs args)
{
if (PanelIsShowing)
{
HidePanel();
args.Cancel = true;
}
}
答案 1 :(得分:0)
后退按钮的行为与Microsoft的意图相同。
如果您更改其行为,则可能会使您的应用程序无法获得市场认证。
如果您想要后退按钮关闭弹出窗口,请将弹出窗口转换为页面,以便后退按钮导航回主页面。
答案 2 :(得分:0)
您需要使用
protected override void OnBackKeyPress(CancelEventArgs e)
{
if (_popup.IsOpen)
{
_popup.IsOpen= false;
e.Cancel = true;
}
else
{
base.OnBackKeyPress(e);
}
}
这应该可以解决问题。