c# – 如何在Windows Phone 8.1中覆盖基本页面的HardwareButtons_BackPressed

c# – 如何在Windows Phone 8.1中覆盖基本页面的HardwareButtons_BackPressed,第1张

概述我的app中有两个页面.一个是blankPage,另一个是基本页面.在基本页面上,如果用户按下后退按钮,我想提供一条消息 “你确定要退出吗.”如果是,那么回去其他地方仍然存在,这通过使用此代码工作正常 HardwareButtons.BackPressed += HardwareButtons_BackPressed;private async void HardwareButtons_Back 我的app中有两个页面.一个是blankPage,另一个是基本页面.在基本页面上,如果用户按下后退按钮,我想提供一条消息
“你确定要退出吗.”如果是,那么回去其他地方仍然存在,这通过使用此代码工作正常

HarDWarebuttons.Backpressed += HarDWarebuttons_Backpressed;private async voID HarDWarebuttons_Backpressed(object sender,BackpressedEventArgs e)        {            e.Handled = true;            MessageDialog dlg = new MessageDialog("Are you sure you want to quit you will loose all your work ?","Warning");            dlg.Commands.Add(new UICommand("Yes",new UICommandInvokedHandler(CommandHandler1)));            dlg.Commands.Add(new UICommand("No",new UICommandInvokedHandler(CommandHandler1)));            await dlg.ShowAsync();    } private voID CommandHandler1(iuiCommand command)        {            var label = command.Label;            switch (label)            {                case "Yes":                    {                        this.Frame.Navigate(typeof(MainPage));                        break;                    }                case "No":                    {                        break;                    }            }        }

但是当我按下BlankPage上的按钮时,此消息也会出现在那里,如果我添加更多内容,也会出现在所有其他基本页面中.我在做什么错?

解决方法 您正在页面构造函数或页面加载事件中注册硬件返回按钮,一旦注册此事件,您就不会取消注册此事件. BackPress是应用级别.在您想要的页面上正确使用此事件注册OnNavigatedTo覆盖方法中的Back Press事件,并在OnNavigatedFrom ovrrIDe方法中取消注册此事件.这是怎么回事.

protected overrIDe voID OnNavigatedTo(NavigationEventArgs e)    {        windows.Phone.UI.input.HarDWarebuttons.Backpressed += HarDWarebuttons_Backpressed;    }    protected overrIDe voID OnNavigatedFrom(NavigationEventArgs e)    {        windows.Phone.UI.input.HarDWarebuttons.Backpressed -= HarDWarebuttons_Backpressed;    }
总结

以上是内存溢出为你收集整理的c# – 如何在Windows Phone 8.1中覆盖基本页面的HardwareButtons_BackPressed全部内容,希望文章能够帮你解决c# – 如何在Windows Phone 8.1中覆盖基本页面的HardwareButtons_BackPressed所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1219181.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存