0

我想让我的程序知道哪个form被打开,然后为此做一些特定的操作form。表单在带有概览的主窗口中打开,用户可以单击图像打开新表单。对于我要打开的表单,这个主窗口不是我的 BaseForm。

要检查form打开的内容,我尝试了以下代码:

bool thisOne;
bool theOtherOne;

private void FormCheck()
{
    foreach (Form form in Application.OpenForms)
    {
        if (form is frmRectangle)
        {
            thisOne = true;
            theOtherOne = false;
            break;
        }

        if (form is frmCircular)
        {
            theOtherOne = true;
            thisOne = false;
            break;
        }
    }
}

我将 form-related 设置booleans为 true,所以我可以在另一个函数中使用它们,如下所示:

private void ActionTime()
{
    if (thisOne)
        Debug.WriteLine("ThisOne is open");
        //Do some stuff for the ThisOne form
    if (theOtherOne)
        Debug.WriteLine("TheOtherOne is open");
        //Do some stuff for TheOtherOne form
}

ActionTime 由 a 调用ClickEvent,但该动作从未发生......我猜它出了点问题foreach-loop

4

0 回答 0