我创建了一个 C# 应用程序。
这里我有两种形式,form1和form2。
从form1调用form2。
后来form2被隐藏了。
现在我想从form1显示form2。
请给我一些想法。
您需要保持对Form2
对象的引用,并且当您希望它可见时,只需调用frm2.Show()
- 不要使用现有对象构造新Form2
对象。new Form2()
// You need to contruct Form2 before calling Show().
Form2 frm2 = new Form2();
// Some handler somewhere
void btnShowForm2_Click(..., ...)
{
frm2.Show();
}
编辑:正如 Micah 指出的那样,您需要隐藏 Form2 而不是关闭它:
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
this.Hide();
e.Cancel = true; // this cancels the close event.
}
在隐藏 form2 而不是 form.close 时,您将需要使用 form.hide()
保留对 form2 的引用,并在要再次显示时调用 form.show
在类级别采用 form2 实例变量
例子
Public Class Form1
{
Form frm2;
//Show form here
protected void Button1_Clik
{
frm2=new Form2();
frm2.Show();
}
//Even the form is hidden, you may show the same instance /same state of form again
protected void Button2_Click()
{
frm2.Show();
}
}