我有三个windows窗体,一个是form1格式的按钮,一个是form2格式的按钮,如果单击了form1上的按钮,则会显示form2
form2 f2 = new form2();
f2.show();form1仍然在后台并可见。form2上还有一个按钮。单击该按钮时,会发生相同的事件,即form2正在后台运行,并且form3会显示出来。当显示form3时,我想隐藏form1。
我该怎么做呢?有没有什么属性可以帮助我知道哪个窗体在后面运行?
发布于 2012-12-18 22:40:36
当打开Form3时,Form2应该会触发一个自定义事件。当Form1显示Form2时,它应该订阅自定义事件,然后Form1可以在事件处理程序中隐藏自己。
public class Form2
{
public event Action Form3Opened;
public void Bar
{
Form3 other = new Form3();
Form3Opened();
other.Show();
}
}
public class Form1
{
public void Foo()
{
Form2 other = new Form2();
other.Form3Opened += () => Hide();
other.Show();
}
}https://stackoverflow.com/questions/13935178
复制相似问题