2013-10-19 37 views
0

我想單擊一個按鈕並導航到新頁面,而不是在第一個窗口頂部顯示第二個窗口。頁面是複雜代碼的視圖(例如,實際的遊戲)。我真的不想使用導航窗口,因爲我不想要前後箭頭出現。下面的代碼的錯誤是「ns」(NavigationService)爲空。我如何讓自己想要做工作?導航到同一窗口中的新頁面

private void btnLevelDesigner_Click(object sender, RoutedEventArgs e) 
{ 
    NavigationService ns = NavigationService.GetNavigationService(this); 
    LevelDesignerPage levelDesignerPage = new LevelDesignerPage(); 
    ns.Navigate(levelDesignerPage); 
} 

enter image description here

+0

你在一個框架託管網頁看看?我看不到上述代碼片段應該打開新窗口而不是顯示新頁面的原因。 –

+0

由於ns爲空,它不會打開任何東西。我只是說我不想打開一個新窗口來解釋我想要的。沒有框架。謝謝。 – user2602079

+0

我問你是正確的,你標記爲答案。如果您需要分頁導航基礎,則必須在框架內提供「頁面」(提供導航服務),或創建WPF分頁應用程序。 –

回答

1

我會插入一個幀到你的主窗口 - http://msdn.microsoft.com/en-us/library/system.windows.controls.frame.aspx

此幀的NavigationService屬性,允許您更改框架的內容。它也應該可用於從框架內部訪問導航服務。

關於前進/後退箭頭 - 在ShowNavigationUI房產

+0

謝謝!我使用了NavigationWindow方法並刪除了前進/後退箭頭。這看起來與使用框架大致相同? (有問題的新照片編輯)。看起來很完美。謝謝! – user2602079

+0

我還沒有下一頁,所以它顯示空白,但我可以告訴它的工作 – user2602079

+0

外觀應該是相同的 - 或者至少他們都可以被配置爲完全不可見(不是內容,但邊框,邊緣,填充...) – Ondra