可以使用Application.OpenForms属性来判断,它是一个FormCollection类型的集合,可以用来获取当前已经打开的窗口,可以通过遍历这个集合来判断某个窗口是否已经打开:
cs
bool isOpen = false;
foreach (Form f in Application.OpenForms)
{
if (f.Name == "Form1")
{
isOpen = true;
break;
}
}
PS:
cs
//关闭窗体
Application.OpenForms["FrmProgressbar"]?.Close();