2015-06-22 4 views
0

Я очень новичок в C# и архитектуре WPF. Я пытаюсь создать приложение с простой навигацией по страницам. Я изменил свой MainWindow из окна в NavigationWindow. Кроме того, я поставил следующий код в MainWindow.xaml.csWPF Navigation C#

public void View(string newView) 
{ 
    Uri View = new Uri(newView, UriKind.RelativeOrAbsolute); 
    this.Navigate(View); 

} 

Я называю этот метод с помощью кнопки в исходном источнике:

private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    string View; 
    View = "Pages/UserAdd.xaml"; 
    MainWindow mainWindow = new MainWindow(); 
    mainWindow.View(View); 
} 

Однако при нажатии кнопки ничего не происходит. Я использовал BreakPoints, и метод определенно называется.

Заранее спасибо.

+0

, если вы новичок в WPF, я действительно предлагаю, чтобы прочитать о MVVM шаблон https://mvvmlight.codeplex.com/ первый. Большинство приложений wpf следуют этому шаблону –

+1

есть очень хороший блог https://rachel53461.wordpress.com/2011/12/18/navigation-with-mvvm-2/, который вы можете сослаться – Vikram

ответ

0

использовать этот код:

public void View(string newView) 
{ 
    NavigationService nav = NavigationService.GetNavigationService(this); 
    nav.Navigate(new Uri(View ,UriKind.RelativeOrAbsolute)); 
} 
+0

Это бросает исключение: Необработанное исключение типа «System.NullReferenceException» произошло в Acounting.exe – fergul

+0

для ответа на вопрос о том, как справиться с этой проблемой. Посмотрите здесь: http://stackoverflow.com/questions/15666075/navigationservice-navigate-null-reference-exception –