【问题标题】:WinRT - Navigate to specific page in the Navigation StackWinRT - 导航到导航堆栈中的特定页面
【发布时间】:2015-08-14 13:54:15
【问题描述】:

我在一个 windows 项目中有这些页面

page1.xaml

page2.xaml

page3.xaml

page4.xaml

在page1上做一些操作后,我称之为;

Frame.Navigate(typeof(page2), document);

在第 2 页上,我对文档做了一些处理,然后导航到 page3.xaml

Frame.Navigate(typeof(page3), document);

然后我在第 3 页上做更多的事情,然后转到 page4.xaml。

在 page4.xaml 中,我有一个按钮,当按下时我想返回 page2,xaml 不是新的,而是我原来的那个。

这可能吗?

【问题讨论】:

    标签: c# xaml windows-runtime windows-store-apps winrt-xaml


    【解决方案1】:

    要导航到page2 的同一实例,您需要将页面的NavigationCacheMode 属性设置为EnabledRequired

    NavigationCacheMode="Enabled" 
    

    现在这两者之间的区别在于他们是否考虑CacheSize, 来自msdn:

    不同之处在于,如果超出帧的缓存大小限制 (CacheSize),则可能不会缓存 Enabled,而无论大小限制如何,Required 始终会生成一个条目。

    【讨论】:

    • 我明白了,所以如果我在执行 Frame.Navigate(typeof(page2), document); 时启用它它会使用我之前使用的缓存版本,而不是 page2 的新实例,对吗?如果我想导航到 page2 的新实例怎么办?
    • 对不起,当你写你的评论时我正在编辑我的评论,不确定你是否阅读了第二部分:如果我想导航到 page2 的新实例怎么办?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-09
    • 1970-01-01
    • 2020-01-28
    • 1970-01-01
    相关资源
    最近更新 更多