如何知道 child window 是打开还是关闭? WPF

How to know child window is open or closed ? WPF

在 WPF 中,如何知道 child window 是否打开? 我的目标是同时只打开 window 的一个实例..

这里是parentwindow

中的伪代码
if (newWindowIsOpened)    //just a pseudo code
{
newWindow.Close();
newWindow.Show();
}
else{
newWindow.Show();
}

提前致谢

一旦 window 关闭,您将无法再次显示它。你可以重复调用 Show()Hide(),你可以通过检查 IsVisible

来测试它是否是 "open"

您可以添加以下代码

public bool newWindowIsOpened;

    public Window14()
    {
        InitializeComponent();

        Window1 window1 = new Window1();
        window1.Closed += new EventHandler(window1_Closed);
        newWindowIsOpened = false;
        window1.Show();
    }

    void window1_Closed(object sender, EventArgs e)
    {
        newWindowIsOpened = true;
    }

谢谢, 阿杰·杜贝迪

In WPF, How do I know if a child window is opened

Application.Current.Windows中寻找:

var oldWindow = Application.Current.Windows.OfType<YourWindowType>().FirstOrDefault();
if (oldWindow != null)
{
    oldWindow .close();
}
YourWindowType newWindow = new YourWindowType();
newWindow.Show();