[英]Close an opened page in WPF C#
我在我的应用程序中打开了一个新页面。
XAML
<MenuItem Header="Admin" IsTabStop="False">
<MenuItem x:Name="mi_ManageUsers" Header="Manage Users" Click="mi_ManageUsers_Click"/>
</MenuItem>
C#
private void mi_ManageUsers_Click(object sender, RoutedEventArgs e)
{
ManageUsers newPage = new ManageUsers();
this.Content = newPage;
}
现在我的新页面中有一个按钮
XAML
<Page x:Class="Billing.ManageUsers"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
Title="ManageUsers">
<Grid>
<Button x:Name="btnClose" Content="Close" HorizontalAlignment="Left" Margin="185,219,0,0" VerticalAlignment="Top" Width="75" Click="btnClose_Click"/>
</Grid>
</Page>
C#
private void btnClose_Click(object sender, RoutedEventArgs e)
{
//OnReturn(new ReturnEventArgs<string>(this.dataItem1TextBox.Text));
this.NavigationService.GoBack();
}
但是代码不起作用。 我需要关闭这个新页面或点击按钮返回上一个窗口
正如我在评论中提到的,当你这样做时this.Content = newPage;
您实际上并没有导航到该页面,而是在更改当前页面的Content
。 当我尝试你的代码时,我在this.NavigationService.GoBack();
行上收到InvalidOperationException
.
要使其正常工作,请将mi_ManageUsers_Click
方法中的代码更改为:
NavigationService.Navigate(new ManageUsers());
我已经测试了这段代码并且有效。 希望这会有所帮助。
我为此苦苦挣扎,但我终于找到了答案......要从您打开的页面中关闭页面,请使用:
NavigationService.Navigate(null);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.