Windows phone 8 当TimeSpanPicker具有焦点(即用户选择时间跨度)时,Windows Phone禁用后退按钮

Windows phone 8 当TimeSpanPicker具有焦点(即用户选择时间跨度)时,Windows Phone禁用后退按钮,windows-phone-8,back-button,timespan,Windows Phone 8,Back Button,Timespan,我目前正在为windows phone应用程序实施倒计时,当用户从TimeSpanPicker中选择时间跨度时,我无法禁用“后退”按钮。我只需要禁用它时,这是发生的,所以它必须工作良好,除了这个 我有override OnBackKeyPress方法,其中包含以下代码: protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) { if(//user choosi

我目前正在为windows phone应用程序实施倒计时,当用户从TimeSpanPicker中选择时间跨度时,我无法禁用“后退”按钮。我只需要禁用它时,这是发生的,所以它必须工作良好,除了这个

我有override OnBackKeyPress方法,其中包含以下代码:

    protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
    {
        if(//user choosing duration using TimeSpanPicker)
        {
            e.Cancel = true;
        }
        base.OnBackKeyPress(e);
    }
正如您可以从注释的伪条件中看到的,我需要一种方法来检查用户当前是否正在选择时间跨度持续时间,如果是,则禁用“后退”按钮。
非常感谢

如果您完全禁用“后退”按钮,您的应用将被市场拒绝

原因有很多,但主要是我们希望在整个平台上获得一致的用户体验。这对我们来说是件好事。用户应该能够打开你的应用程序,并期望按钮按预期运行


覆盖后退按钮的一个可接受的原因是,如果您在游戏屏幕上,希望游戏暂停。另一个原因是,如果出现了自定义菜单,而“后退”按钮隐藏了菜单。这两种情况对用户来说都是显而易见的

如果用户愿意,就让他回去吧!在这种情况下,保持先前设置的时间跨度。如果用户想要一个新的,他将重新进入时间跨度选择器屏幕。但是如果用户想要返回(可能要多次关闭应用程序),让他这么做吧。我只是在尝试使重置按钮更可靠时才想到这样做,因为当用户在初始选择时间跨度后点击timeSpanPicker元素,然后单击后退按钮时,重置按钮会将值重置为点击timeSpanPicker元素时的值,而不是之前的值选择的时间跨度。我会考虑其他选项,谢谢你的帮助。是的,我意识到完全禁用是不可接受的,但我认为这是可以接受的,因为只有在临时从timeSpanPicker元素中选择时间跨度时才可以。谢谢你的帮助,我会考虑其他的选择。@JamesTwigg一个好的经验法则是“如果你正在做的事情与标准相悖,那么你可能需要重新思考你的架构。”我知道有时候很难做到这一点,但如果你花时间做这件事,你会成长为一名开发人员。我很感激@Anthony Russell的建议,并肯定会采纳,谢谢。