我有两个WinForm对象,form1
和form2
。我想做的是:
一个。当用户点击form1
上的按钮时,系统会隐藏此按钮,并显示form2
的新实例。所以我做了:
form1.Hide();
form2 new_session = new form2();
form2.Show();
湾从form2
开始,我希望用户能够点击按钮来恢复他已生成form1
实例的原始form2
。基本上,像:
form2.Hide();
form1.Show();
显然,当前上下文中不存在form1
。我知道要解决此问题的解决方案是创建form2
的属性,我在其中分配form1
,以便我可以再次调用它:
form1 pMyForm;
public form1 myForm
{
get{return pMyForm;}
set{pMyForm = value;}
}
之前显示form2
...
form2 new_session = new form2();
form2.myForm = this;
但是,我觉得这样做更合适。我以为我可以在form1
的{{1}}属性中找到ParentForm
,但我找到了form2
。与此同时,我尝试将null
分配给form1
的{{1}}属性,但收到错误Parent
。
您对如何更好地处理此问题有任何建议吗?
答案 0 :(得分:1)
Form2.Owner = this;
和
Form1 form = (Form1)this.Owner;
在这里查看我的完整答案: how to exit from application on click of (red X ) button right top on winform