1

我目前正在编写一个正在运行的跟踪器,我希望用户可以让我的应用程序在后台运行。

在后台运行时一切都很好,但是每当我重新打开应用程序时,它都会让我回到主菜单。

最后,我想要访问 RootFrame.BackStack,以便用户可以从中断的地方继续。

我在 App.xaml.cs 中尝试了以下代码,但在尝试访问 RootFrame.BackStack.GetEnumerator().Current 时抛出了“InvalidOperationException”。

注意:我检查过,当前之前的所有值都是非空的。

    private void Application_Activated(object sender, ActivatedEventArgs e)
    {
        JournalEntry j;
        if (RootFrame.BackStack.GetEnumerator().Current != null)
            j = RootFrame.BackStack.GetEnumerator().Current;
        RunningInBackground = false;
    }
4

2 回答 2

1

您正在寻找的内容称为Fast App Resume

Windows Phone 8 引入了应用程序请求用户操作的能力,这些操作通常会重新启动应用程序,例如点击应用程序的开始磁贴,而不是恢复暂停的应用程序实例的暂停实例(如果存在)。此功能称为快速恢复。

要为您的应用启用快速恢复,请将 ActivationPolicy 属性添加到 WMAppManifest.xml 中的 DefaultTask 元素,并将值设置为“恢复”。

<DefaultTask Name="_default" NavigationPage="MainPage.xaml" ActivationPolicy="Resume"/>
于 2013-07-15T20:44:46.097 回答
0

试试这个示例链接。我希望这就是你要找的。 http://code.msdn.microsoft.com/wpapps/Fast-app-resume-backstack-f16baaa6

于 2013-07-16T05:45:50.007 回答