我看到有幾個人遇到了問題,所以我想發佈一個我在處理這個問題時提出的(有點)優雅的解決方案。問題是在Silverlight中創建模板頁面時,ContentControls沒有父框架的NavigationService(當您嘗試使用它時,它始終爲空)。 NavigationService存在於intellisence中的情況類似,但始終爲空。爲了使整個網站的導航:Silverlight NavigationService總是空的
創建一個新的
UserControl
(我叫我的「NavFrame」),其中有一個導航框(我叫我的「RootFrame」)。在這個框架內,你可以設置你喜歡的任何內容。
在App.xaml.cs中設置此UserControl爲
RootVisual
(即this.RootVisual = new NavFrame();
)。要使用的NavigationService在任何網頁上,你可以輸入類似:
((NavFrame)App.Current.RootVisual).RootFrame.NavigationService .Navigate(new Uri("Your Uri", UriKind.RelativeOrAbsolute));
+1:一直在尋找讓我能夠使用App.Xaml.cs類中的NavigationService的東西。謝謝。 – 2010-08-25 15:38:41