2010-12-02 60 views
1

我不確定如何在Silverlight 4中保留頁面狀態。Silverlight導航:如何記住頁面狀態?

我有一個頁面,名爲SearchPage。用戶通過查詢來找到它,但當用戶在那裏時,查詢可能會改變。如果用戶返回,我希望保留最新版本的查詢,而不是原來的版本。

爲此,我覆蓋了OnFavigatedFrom()並更改了NavigationContext.QueryString以反映新值。然後,在OnNavigatedTo()中,我檢查這些值。

不幸的是,這是行不通的。看起來我無法更改查詢字符串,因爲當我調用navigator.GoBack()時,它會返回到原始查詢字符串。

還有什麼其他方式可以保持頁面狀態?

回答

1

您可以將頁面上的NavigationCacheMode屬性設置爲「已啓用」或「必需」,這將緩存並保留導航時的頁面狀態。