0

如何导航到 winrt 中已创建的页面实例,而不是按类型 ( frame.Navigate(typeof(SomePage))) 导航?

目前我只是设置Window.Current到需要的页面,但它没有动画,当然最好提供一些 Back、CanGoBack 逻辑等。

4

1 回答 1

4

显然它不支持内置,但您可以尝试设置 frame.Content = existingInstance 或摆弄 page.NavigationCacheMode 以达到您正在寻找的效果。如果这不起作用 - 您可以实现自己的导航框架实现,可能基于 ContentControl。您还可以从 WinRT XAML 工具包中的AlternativeFrame控件中窃取我的代码,我在其中尝试通过添加页面预加载和并发页面转换动画来实现常规 Frame 控件的所有功能。我认为添加对采用页面实例的 Navigate 方法重载的支持并不难,如果您可以将官方 Frame 和 Page 控件抛在后面并深入研究一些开源代码。

于 2012-11-06T07:12:06.480 回答