0
我对C#和WPF体系结构非常陌生。我正在尝试使用简单的页面导航创建应用程序。我已将我的MainWindow从Window更改为NavigationWindow。我也把下面的代码在MainWindow.xaml.csWPF页面导航C#不工作
public void View(string newView)
{
Uri view = new Uri(newView, UriKind.Relative);
NavigationService nav = NavigationService.GetNavigationService(this);
if (nav != null)
{
nav.Navigate(view);
}
else
{
MessageBox.Show("NavNull");
}
}
我打电话从默认源(“HubView.xaml”),这是一个名为“页”文件夹中的这种方法。代码看起来像这样
public void Button_Click(object sender, RoutedEventArgs e)
{
View = @"\Pages\UserAdd.xaml";
MainWindow mainWindow = new MainWindow();
mainWindow.View(View);
}
但是,当我点击按钮时,消息框显示,指示nav等于空。我已经通过this的问题和后面的回答,但我仍然不完全明白。
任何建议将不胜感激!
编辑:
这是 “MainWindow.xaml”:
<NavigationWindow x:Class="Container.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
ResizeMode="CanMinimize"
Title="MainWindow" Height="350" Width="525" Source="Pages/HubView.xaml" WindowStyle="ThreeDBorderWindow" ShowsNavigationUI="False">
</NavigationWindow>
正如你可以看到窗口是浏览窗口。
MainWindow.xaml已经是一个NavigationWindow。 – fergul