[英]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.