这样做的正确Form5
方法是在创建对象时保持对对象的引用。例如,您可以通过声明一个类级变量来做到这一点。
public class MyForm : Form
{
private Form5 m_frm5 = null;
// ...other code...
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (m_frm5 == null)
{
m_frm5 = new Form5();
}
m_frm5.Show();
}
}
显然,您需要适当地选择一个范围,具体取决于您需要访问表单对象的位置。static
局部变量也可能同样有效,或者您可能需要将其设为全局变量以供整个应用程序使用。
或者,您可以遍历Application.OpenForms
集合,检查是否Form5
已经创建了 的实例。
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
foreach (Form f in Application.OpenForms)
{
if (f.GetType() == typeof(Form5))
{
f.Show();
return;
}
}
Form5 frm5 = new Form5();
frm5.Show();
}
专业提示:为您的表单类选择比默认名称更具描述性的名称。Form5 什么也没告诉我。