繁体   English   中英

Windows Phone后退按钮

[英]Windows Phone back button

当我点击按钮时,我需要返回特定页面。 更像是自定义后退按钮。

我可以去确切页面,如果我知道页面是什么,

private void button_click(object sender, RoutedEventArgs e)
{
    Frame.Navigate(typeof(Page1));
}

我也可以回到上一页

if(this.Frame.CanGoBack)
{
    Frame.GoBack();
}

但是如何一次跳到上一页之前的页面呢?

任何页面历史记录?

您可以使用NavigationServices.BackStack访问以前页面的历史记录。

但是你没有具体的方法可以一次从2页回来。 但是,如果您要跳转到上一页之前的页面, NavigationServices.GoBack()两次调用NavigationServices.GoBack()

此外,如果您要返回特定页面,您可以知道它在backstack之间的索引并使用GoBack方法进行循环。

您可以从BackStack获取所有页面作为列表:

var lstAllStackPages = this.Frame.BackStack.ToList();

并创建一个for循环来获取您的特定页面并导航到它。

谢谢你@CoderDennis,我想通了。 希望它能帮助别人。 如果我进入主页面,我想回到主页面,

foreach (PageStackEntry stack in Frame.BackStack)
{
 //check if stack contains history of the main page. (Solution name: Helloworld)
 if (stack.SourcePageType == typeof(HelloWorld.MainPage))
   {
    Frame.Navigate(stack.SourcePageType);
    break;
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM