2011-05-15 127 views
1

在我的項目中,我創建了一個名爲「頁面」的單獨文件夾,用於存儲除主頁面以外的所有頁面。我希望從主頁面導航到這些頁面之一。我該怎麼做?我一直沒有運氣:Windows Phone 7導航服務URI?

NavigationService.Navigate(new Uri("/Pages/Page1.xaml",UriKind.Relative)); 

我收到一個空引用異常每個time.thanks提前! 也有什麼辦法,我可以瀏覽使用頁面構造函數,而不是像在WPF中?

+0

你在哪裏調用該代碼? – 2011-05-15 22:54:32

+0

不要試圖從構造函數中進行導航,這可能會導致引發Null引用異常。那是你在做什麼?另外,你的意思是你想使用頁面的構造函數進行導航? – keyboardP 2011-05-15 23:02:18

+0

^^感謝你這樣做,我仍然習慣於WPF和WP7之間的微妙差異。我的意思是使用頁面構造函數進行導航是因爲WPF允許你執行以下操作 - >'this.NavigationService.Navigate(new第1頁());」 – Atif 2011-05-16 10:13:56

回答

2

NavigationService特定於一個頁面。如果你試圖從外部調用它,你通常會得到一個NullReferenceException

+0

不,我試圖從主頁的構造函數中調用它來彌補未完成的導航邏輯。 – Atif 2011-05-16 10:19:13

0

嘗試覆蓋OnNavigateTo()事件並從那裏執行頁面導航。你不會在那裏得到空例外。

此事件在構造函數加載完成後立即觸發,因此如果您想要在頁面完全加載之前檢查某些條件並執行導航,那麼這是理想的地方。

此外,還有另一個名爲「OnNavigateFrom()」,它會在您退出該頁面時發生。

希望有所幫助。