读书人

急求解答:WindowsPhone容许对Back按键

发布时间: 2012-12-18 12:43:41 作者: rapoo

急求解答:WindowsPhone允许对Back按键的响应事件进行重写么?
就是说,我可不可以实现下面这样的功能 。

当我按下手机 的Back键之后, 并不是返回前一个页面, 而是(重写其响应事件)
仍停留在当前界面进行事件的相应 处理。

比如说我现在有个应用 ,只有一个界面,
我把关于应用设置的按钮都布局到了一个canvas上, 我想在按Back事件之后,不是退出程序 ,而是将Canvas显示出来,
以便可以对应用进行别的操作。


求各位 大牛们 给正解。

谢谢啦。
[最优解释]


e.Cancel = true;//不返回
加上应该就行了

protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
if (isStartScreen)//isStartScreen用来判断是否是起始界面
e.Cancel = false;
else
{
StartCanvas.Visibility = Visibility.Visible;(StartCanvas是我写的一个布有按钮的Canvas)
isStartScreen= true;
e.Cancel = true;
}
[其他解释]
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
if (MessageBox.Show("您真的想退出应用程序吗?", "退出提示!", MessageBoxButton.OKCancel) == MessageBoxResult.OK)
{
e.Cancel = false;
}
else
e.Cancel = true;
}
[其他解释]
重写OnBackKeyPress就可以了
[其他解释]

引用:
重写OnBackKeyPress就可以了


我试试哈,谢谢啦,搞不明白再问你。
[其他解释]
引用:
重写OnBackKeyPress就可以了


貌似不太对哇,再请教下,我的代码是这样的
//如果是起始界面,按下Back正常退出程序,如果不是则按下Back后退回起始界面(就是显示出StartCanvas)
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
if (isStartScreen)//isStartScreen用来判断是否是起始界面
base.OnBackKeyPress(e);
else
{
StartCanvas.Visibility = Visibility.Visible;(StartCanvas是我写的一个布有按钮的Canvas)
isStartScreen= true;
}
为什么 我在运行时,按Back后还是退出了程序 呢??
求大牛给正解。。。。坐等 。
[其他解释]
你会下断点debug跟踪程序的运行过程么?

[其他解释]
引用:
引用:

重写OnBackKeyPress就可以了


貌似不太对哇,再请教下,我的代码是这样的
//如果是起始界面,按下Back正常退出程序,如果不是则按下Back后退回起始界面(就是显示出StartCanvas)
protected override void OnBackKeyPress(System.ComponentModel.CancelEventAr……


光这样,还会调用系统返回的
[其他解释]

e.Cancel = true;得有这句
[其他解释]


该回复于2012-10-01 09:13:51被版主删除

读书人网 >Windows Mobile

热点推荐