WPF 在Page页面调用上级Window的方法实现跳转页面
时间: 2024-03-27 15:39:58 浏览: 70
可以通过以下步骤在Page页面中调用上级Window的方法实现跳转页面:
1. 在Window中定义一个Frame控件作为容器,用于显示Page页面。
2. 在Window中定义一个方法,用于在Frame中加载指定的Page页面。
3. 在Page页面中定义一个事件,用于触发Window中的方法加载新的Page页面。
具体实现步骤如下:
1. 在Window中定义一个Frame控件:
```xaml
<Window>
<Grid>
<Frame x:Name="MainFrame"/>
</Grid>
</Window>
```
2. 在Window中定义一个方法,用于在Frame中加载指定的Page页面:
```csharp
public void NavigateToPage(Page page)
{
MainFrame.NavigationService.Navigate(page);
}
```
3. 在Page页面中定义一个事件,用于触发Window中的方法加载新的Page页面:
```csharp
public event EventHandler<Page> NavigateToPageRequested;
private void Button_Click(object sender, RoutedEventArgs e)
{
NavigateToPageRequested?.Invoke(this, new NextPage());
}
```
在Page页面中,当点击某个按钮时,会触发NavigateToPageRequested事件,这个事件会调用Window中的NavigateToPage方法,从而在Frame中加载指定的Page页面。
阅读全文