我有一个应用程序,我从 MainPage.xaml 导航到一个名为“two.xaml”的页面。

然后在 Two.xaml 中导航到 Three.xaml..

现在,对于 Three.xaml,我想导航回 mainPage.Xaml。

在 Three.xaml 中如果我这样做

this.NavigationService.GoBack();
this.NavigationService.GoBack();

我收到 InvalidOperationException。

如果我做

NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));

系统将创建 MainPage.xaml 的另一个实例,我不想要它,因为它将失去其原始状态。

有人有这个问题的解决方案吗?

有帮助吗?

解决方案

您可以保存实际状态,例如在 State-Property 中 电话申请服务 类,然后浏览页面,当返回到 MainPage 时,您只需实现 MainPage 的 OnNavigedTo() 方法并加载状态数据。

希望这可以帮助...

其他提示

据我所知,你不应该在你的应用程序操纵回堆栈。 什么cordellcp3说,可能是一个好主意,落实

如果你的目的是用这种方式来浏览: MainPage-> PageTwo-> PageThree 用户按下后退按钮,去炫魅广东您可以使用此: NavigationService.RemoveBackEntry() 文档

希望它帮助

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top