【问题标题】:Preserve FlipView selected item on GoBack navigation?在 GoBack 导航上保留 FlipView 选定的项目?
【发布时间】:2013-05-06 04:23:21
【问题描述】:

我有一个应用程序,其中包含两个级别的 LayoutAware 页面和 FlipViews。 GoBack 让我很头疼,因为它记住了我的原始导航参数,而不是在导航离开时保存它的最后状态。

导航流程:

1) 主页:

选择一个项目会导航到当前项目选中的翻转视图页面: this.Frame.Navigate(typeof(ItemFlipViewPage), selectedItem1);

2) ItemFlipViewPage: 根据LoadState导航参数设置FlipView选中项(本例中为selectedItem1)

更改 FlipView 的选定项(例如 selectedItem3)并导航到 GalleryFlipViewPage:

this.Frame.Navigate(typeof(GalleryFlipViewPage), selectedItem3_Image1);

3) GalleryFlipViewPage:

单击 GoBack 按钮会导致 ItemFlpViewPage 使用 selectedItem1 的原始 Navigation 参数加载。

在 GoBack 上保留所选项目的最佳方式是什么?

【问题讨论】:

    标签: windows-8


    【解决方案1】:

    设置Page.NavigationCacheMode="Required"

    【讨论】:

    • 这解决了问题,但引入了一个新问题。当我返回主页然后单击一个新项目时,会出现以前缓存的页面。
    • 在这种情况下,实际上最好保留其默认的NavigationCacheMode="Disabled" 设置,但请确保您存储了要恢复的属性,该属性由导航到该页面时传递的参数键入。或者,您可以在向前导航到该页面时清除输入/缓存的值,但请注意,如果您返回 Frame 返回堆栈并通过前进到已清除的页面,也会将其清除它在别处。这完全取决于您的导航模型。
    猜你喜欢
    • 2016-04-07
    • 1970-01-01
    • 2013-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多