0
我有一個由四個頁面(XAML)組成的簡單Silverlight應用程序。 導航通過以下方式完成:XAML頁面之間的導航
//from XamlPageA
this.Content = new XamlPageB();
這是正確的方法。我需要在瀏覽器歷史記錄中輸入條目,以便用戶可以轉至上一頁。我該怎麼做。
我有一個由四個頁面(XAML)組成的簡單Silverlight應用程序。 導航通過以下方式完成:XAML頁面之間的導航
//from XamlPageA
this.Content = new XamlPageB();
這是正確的方法。我需要在瀏覽器歷史記錄中輸入條目,以便用戶可以轉至上一頁。我該怎麼做。
您正在通過手動設置內容完全繞過導航系統。如果你這樣做的話,你必須自己實現更新瀏覽器歷史記錄(當然可能,但相當單調乏味)。
更簡單的方法是生成一個「Silverlight商業應用程序」項目,並查看如何使用超鏈接按鈕簡單處理頁面導航。所有的瀏覽器歷史管道工作都是爲您完成的,就像從URL到視圖的映射一樣。
例如具有NavigateUri="/Home"
的按鈕將導致名爲Home.xaml的視圖加載到MainPage窗口的navigation:Frame
中。
如果你看看MainPage.xaml中的navigation:Frame
元素,你會看到一些UriMapping條目是這樣的:
<uriMapper:UriMapping Uri="" MappedUri="/Views/Home.xaml"/>
<uriMapper:UriMapping Uri="/{pageName}" MappedUri="/Views/{pageName}.xaml"/>
他們提供配套,從URL轉換到欣賞模式。
希望這可以幫助您的項目。
[silverlightshow.net](http://www.silverlightshow.net/items/The-Silverlight-3-Navigation-Framework.aspx)上有很好的導航框架示例, – 2011-06-10 08:19:09