检查是否在WPF上打开了窗口

时间:2018-11-11 16:38:53

标签: c# wpf window

我的程序有一个MainWindow和SecondWindow,第一个被这样调用:

SecondWindow config = new SecondWindow();
config.Owner = this;
config.Show();

这些行包含在Button.Click方法中。我想检查它是否已经打开,关闭或不打开。 谢谢!

2 个答案:

答案 0 :(得分:0)

不创建新实例。只需将其添加到MainWindow类的顶部,然后在单击按钮时使用secondWindow.Hide();您必须隐藏,因为如果您将其关闭,您将无法再次显示。如果您要不打开,请激活该窗口,然后使用 secondWindow.Activate();将其带到桌面顶部。

答案 1 :(得分:0)

尝试一下:

if(Application.Current.Windows.OfType<SecondWindow>().FirstOrDefault() ==  null)
{
  //second window not exist
}