尽管我完全是WPF的新手,但我需要编写一个代码,在单击按钮后,应用程序应该打开另一个xaml。在网络上搜索后,我按照以下方式进行:在WPF中从一个xaml导航到另一个
1.我创建了两个xaml文件,即'Window1.xaml'和'Window2.xaml'。
2.In我 '的App.xaml' 文件,我让:
<Application x:Class="DiagramDesigner.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="Window1.xaml">
3.Then在我的 'Window1.xaml',我创建了一个按钮:
<Button Name="Button" Click="Button_Click_1" MouseEnter="Button_MouseEnter_1" IsDefault="True"
HorizontalAlignment="Center" VerticalAlignment="Center">
Start
</Button>
4。在我的“Windwo1.xaml.cs”的文件,我创建了这两个功能:点击按钮后
private void Button_Click_1(object sender, RoutedEventArgs e)
{
}
private void Button_MouseEnter_1(object sender, MouseEventArgs e)
{
}
5.Then开“Window2.xaml”,我改成:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
NavigationService service = NavigationService.GetNavigationService(this);
service.Navigate(new Uri("Window2.xaml", UriKind.RelativeOrAbsolute));
}
但是,这给了我错误,说service
为空,程序崩溃了。我没有想出任何方法来解决这个问题。有什么建议么?谢谢。
谢谢您的回答。它给出了一个错误,并说:非静态字段,方法或属性'System.Windows.Window.ShowDialog()'需要一个对象引用。 –
对不起,我的错误,现在它工作正常。 –