2013-05-06 32 views
0

我有一個與FlipViews的兩個級別的LayoutAware頁面的應用程序。 GoBack令我頭痛,因爲它記住我的原始導航參數,而不是保存它離開時的最後狀態。在GoBack導航上保留FlipView選定的項目?

導航流量:

1)的MainPage:

選擇項目導航到與當前項目倒裝視圖頁選自:) this.Frame.Navigate(typeof運算(ItemFlipViewPage),selectedItem1;

2)ItemFlipViewPage:基於LoadState的導航參數(selectedItem1在這個例子中)

更改FlipView的選擇的項目(例如selectedItem3 集FlipView選擇的項目)和導航到GalleryFlipViewPage:

此。 Frame.Navigate(typeof(GalleryFlipViewPage),selectedItem3_Image1);

3)GalleryFlipViewPage:

點擊GoBack的按鈕會導致ItemFlpViewPage與selectedItem1的原始導航參數被加載。

在GoBack上保留我選擇的項目的最佳方法是什麼?

回答

1

設置Page.NavigationCacheMode="Required"

+0

解決了這個問題,但引入了一個新問題。當我回到主頁面然後點擊一個新項目時,就會顯示先前緩存的頁面。 – kbeal2k 2013-05-06 04:50:49

+1

在這種情況下,留下默認的'NavigationCacheMode =「Disabled」'設置可能會更好,但請確保您存儲了您要恢復的屬性,這些屬性由您在導航到該頁面時所傳遞的參數來確定。或者,當您向前導航到該頁面時,您可以清除輸入的/緩存的值,但是請注意,如果您通過「Frame」返回堆棧並返回已通過前進到的頁面,也會將其清除它在別處。這一切都取決於您的導航模型。 – 2013-05-06 19:20:51

相關問題