关闭另一种形式时以一种形式执行代码

时间:2018-10-04 05:35:14

标签: c# winforms

所以我有Form1Form2

当我使用Form2关闭this.Close()时,我希望Form1检测到关闭并执行代码。

可以做到吗?

1 个答案:

答案 0 :(得分:0)

是的,您可以在FormClosing事件中执行任意操作,但是您需要  在Form1上声明静态属性,并在FormClosing上的Form2上设置值,并用set{}的peroperty方法编写要执行的操作。

// in Form 2
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
    Form1.IsForm2Closed = true;
}

// in Form 1
private static _isForm2Closed ;
public static bool IsForm2Closed 
{
    get
    {
        return _isForm2Closed;
    }
    set
    {
        _isForm2Closed = value;

       if(value)
       {
           // do whatever you want to execute here.
       }
    }
}