使用后退按钮暂停UWP应用程序

本文关键字:暂停 UWP 应用程序 按钮 | 更新日期: 2023-09-27 18:06:30

是否有一种方法,我可以"暂停"一个UWP应用程序按下后退按钮。我甚至不确定暂停是正确的术语,但我想做的是关闭应用程序,当用户按下后退按钮,而不是回到注册/登录页面在我的应用程序。我希望该应用程序去关闭,但也仍然显示,当用户打开最近的应用程序菜单通过持有后退按钮。下面是我在app . xml . cs

中的代码
 private void OnBackRequested(object sender, Windows.UI.Core.BackRequestedEventArgs e)
        {
            Frame rootFrame = Window.Current.Content as Frame;
            if (rootFrame.CurrentSourcePageType == typeof(Pages.Home))
            {
                App.Current.Exit();
            }
            if (rootFrame.CanGoBack)
            {
                e.Handled = true;
                rootFrame.GoBack();
            }
        }

问题出在App.Current.Exit();它终止了应用程序,我想做的只是关闭和不回到主页。我该怎么做呢?

使用后退按钮暂停UWP应用程序

要离开你的应用程序而不终止它,只需删除App.Current.Exit();并忽略返回事件(e.Handled = false;)。然后你会得到默认行为,也就是将应用留在移动设备上。在桌面,你的应用程序将停留在原来的页面上。然后你必须做任何适合你需要的事情来保存/恢复你的应用程序在适当的状态,使用暂停/恢复事件处理程序。

void OnBackRequested(object sender, Windows.UI.Core.BackRequestedEventArgs e)
{
        Frame rootFrame = Window.Current.Content as Frame;
        if (rootFrame.CurrentSourcePageType == typeof(Pages.Home))
        {
            // ignore the event. We want the default system behavior
            e.Handled = false;
        }
        else if (rootFrame.CanGoBack)
        {
            e.Handled = true;
            rootFrame.GoBack();
        }
}