2010-10-30 67 views
0

如果用戶導航到顯示「添加項目」視圖(#/項目/添加)的頁面,我希望在保存項目後單擊「後退」時基本跳過該URL。在Silverlight 4 Navigation中是否有類似於「locate.replace()」的選項?

我該怎麼做?

這裏是我更詳細地後我的行爲......如果用戶導航到,目前這個Silverlight的網址:

#/項目/名單

時他們點擊 「添加」 按鈕......他們瀏覽到

#/項目/加

他們保存後,他們瀏覽到

#/項/ 99(其中99是新的項目ID。)

當他們點擊從這裏返回按鈕,我希望他們在

#/項目/名單返抵

+0

我想如果一切都失敗了,我可以使用javascript來執行locate.replace,對吧? – 2010-10-30 04:02:06

+0

我也對silverlight導航感興趣。我不能給一個授權答案,但我正在閱讀這個http://www.silverlightshow.net/items/The-Silverlight-3-Navigation-Framework.aspx – MikeAinOz 2010-10-30 04:30:08

回答

0

我能夠通過處理Navigati跳過一個特定的URL該框架的NG事件,做在處理程序的身體是這樣的:

if (SomehowDecideToSkipThisOne(e)) 
{ 
    e.Cancel = true; 
    Frame.StopLoading(); 
    Frame.Navigate(uriToRedirectTo); 
} 

然而,問題的關鍵在於如何因爲根據MSDN實施SomehowDecideToSkipThisOne,"Any navigation request that the user initiates through a Web browser (including using the back or forward button of the Web browser) is represented as a New type of navigation."

因此,我不能知道當用戶點擊瀏覽器上的後退按鈕時他們實際上會「回來」。所以,現在我想我會決定跳過這個功能的使用,特別是因爲我不需要它的搜索引擎優化。我只是認爲這只是對我的Intranet應用程序的一個很好的增強。在這種情況下,要正確支持是非常困難的。

+0

其實,我仍然可以使用導航,但我不會使用它用於導航到「添加項目」屏幕。 – 2010-10-30 05:29:29

+0

答案基本上是「否」。 – 2010-11-02 22:36:25

相關問題