我正在研究这个WPF项目。主窗口有8个按钮,所有按钮都打开另一个窗口。我想做的是,当用户单击其中一个按钮时,主窗口被隐藏(未关闭),并且辅助窗口打开。现在,当辅助窗口关闭时,我想取消隐藏我的主窗口。这是我得到的代码。
public WndwProjectSetup(Window mainWindow)
{
InitializeComponent();
_mainWindow = mainWindow;
_mainWindow.Visibility = Visibility.Hidden; // hides main window
}
private void WindowClosing(object sender, CancelEventArgs e)
{
_mainWindow.Visibility = Visibility.Visible; // unhides main window
Close(); // close Project Setup window
}
这对我来说似乎很简单直接。然而,我收到了这个错误:
Cannot set Visibility to Visible or call Show, ShowDialog, Close, or
WindowInteropHelper.EnsureHandle while a Window is closing.
我的问题是,为什么这是不可接受的?我需要了解一下如何做到这一点?
答案 0 :(得分:4)
您无需致电Close
,它已经关闭。 (如果您可以通过将e.Cancel
设置为true
)