隐藏窗口,直到再次需要它为止

时间:2013-05-15 14:28:49

标签: c# wpf

我正在研究这个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.

我的问题是,为什么这是不可接受的?我需要了解一下如何做到这一点?

1 个答案:

答案 0 :(得分:4)

您无需致电Close,它已经关闭。 (如果您可以通过将e.Cancel设置为true

取消任何操作