我发现问题是它不能关闭这个窗口。但它可以打开主窗口。请帮助代码在按钮
private void LoginBtn_Click(object sender, RoutedEventArgs e) { MainWindow MainView = new MainWindow(); MainView.Show(); AuthWindow AuthView = new AuthWindow(); AuthView.Close(); }
private void LoginBtn_Click(object sender, RoutedEventArgs e)
{
MainWindow MainView = new MainWindow();
MainView.Show();
AuthWindow AuthView = new AuthWindow();
AuthView.Close();
}
我想按下页面内的按钮,关闭那个窗口,打开另一个窗口。
fykwrbwg1#
对于这种情况,我建议您使用RoutedCommand,在这种情况下,您可以使用现成的命令ApplicationCommands.Close。在页面按钮中,指定命令名称:
ApplicationCommands.Close
<Button Content="Close Window" Command="Close" />
在Window中,设置命令执行:
<Window.CommandBindings> <CommandBinding Command="Close" Executed="OnCloseWindow"/> </Window.CommandBindings> <x:Code> <![CDATA[ private void OnCloseWindow(object sender, ExecutedRoutedEventArgs e) { this.Close(); } ]]> </x:Code>
<Window.CommandBindings>
<CommandBinding Command="Close" Executed="OnCloseWindow"/>
</Window.CommandBindings>
<x:Code>
<![CDATA[
private void OnCloseWindow(object sender, ExecutedRoutedEventArgs e)
this.Close();
]]>
</x:Code>
**P.S.**我也不建议您打开新窗口。由于您使用的是Pages,您应该在单个窗口中更改Pages。关闭窗口被视为退出应用程序。
jmo0nnb32#
变更
AuthWindow.Close();
结束日期
This.Close();
2条答案
按热度按时间fykwrbwg1#
对于这种情况,我建议您使用RoutedCommand,在这种情况下,您可以使用现成的命令
ApplicationCommands.Close
。在页面按钮中,指定命令名称:
在Window中,设置命令执行:
**P.S.**我也不建议您打开新窗口。由于您使用的是Pages,您应该在单个窗口中更改Pages。关闭窗口被视为退出应用程序。
jmo0nnb32#
变更
结束日期