使用PickFolderAndContinue方法后,我遇到了恢复应用程序的问题。我一直试图从this MSDN示例中取消指示。我无法弄清楚如何更改OnActivated
方法以返回到我的“设置”页面(该示例仅使用包含不同内容框架的主页)。
protected async override void OnActivated(IActivatedEventArgs e)
{
base.OnActivated(e);
ContinuationManager continuationManager = new ContinuationManager();
Frame rootFrame = CreateRootFrame();
await RestoreStatusAsync(e.PreviousExecutionState);
if (rootFrame.Content == null)
{
rootFrame.Navigate(typeof(SettingsPage));
}
var continuationEventArgs = e as IContinuationActivatedEventArgs;
if (continuationEventArgs != null)
{
// What do i do here to return to my settings page?
Frame scenarioFrame = SettingsPage.Current.FindName("ScenarioFrame") as Frame;
if (scenarioFrame != null)
{
// Call ContinuationManager to handle continuation activation
continuationManager.Continue(continuationEventArgs, scenarioFrame);
}
}
Window.Current.Activate();
}
感谢。
答案 0 :(得分:0)
当你知道你总是想要去设置页面时调用你的OnActivated,你只需要这个代码:
Frame rootFrame = CreateRootFrame();
await RestoreStatusAsync(e.PreviousExecutionState);
if (rootFrame.Content == null)
{
rootFrame.Navigate(typeof(SettingsPage));
}
该代码创建应用程序根框架,并告诉它导航到该特定页面。
此后的代码使用ContinuationManager。这是一种设置为调用页面的机制,让它知道它是从AndContinue方法返回的。这将允许页面为该页面执行任何功能。
FilePicker还有一个ContinuationData属性,您可以在调用AndContinue方法之前设置该属性。这些数据可通过IContinuationActivatedEventArgs在OnActivated中获得。
此博客对AndContinue方法有很好的描述: http://blogs.msdn.com/b/wsdevsol/archive/2014/05/08/using-the-andcontinue-methods-in-windows-phone-silverlight-8-1-apps.aspx