如何检查子表单是否最小化?

时间:2013-03-14 09:31:27

标签: c# winforms visual-studio-2010

例如,我有方法名称​​ CheckOpened 来检查表单是否已打开。

private bool CheckOpened(string name)
{
    FormCollection fc = Application.OpenForms;

    foreach (Form frm in fc)
    {
        if (frm.Text == name)
        {
            return true;
        }
    }
    return false;
}

同样地,我想检查表单是否被最小化,还有一件事我正在使用 StatusStrip ,其中将显示最小化表单的名称以及用户何时单击名称将显示表格。我的 StatusStrip 逻辑工作正常我只想让代码检查 StatusStrip 上显示的最小化形式。

2 个答案:

答案 0 :(得分:1)

您可以通过阅读Form属性来检查Form.WindowState是否被最小化,该属性返回FormWindowState.NormalFormWindowState.MaximizedFormWindowState.Minimized

答案 1 :(得分:0)

使用相同的thecnique但查询WindowState属性:

private bool CheckMinimized(string name)
{
    FormCollection fc = Application.OpenForms;

    foreach (Form frm in fc)
    {
        if (frm.Text == name && frm.State == FormWindowState.Minimized)
        {
            return true;
        }
    }
    return false;
}