如何打开表格第二次关闭

时间:2014-09-08 19:21:47

标签: c# .net

我使用c#.net做窗口应用程序。

我有一个带有菜单条的表单名称form_1。

从form_1的菜单条中,我打开相同的form_1形式并在使用后关闭相同的form_1但如果我第二次点击它没有显示,如果我第三次点击它显示。 编辑:

的MainForm

form fm;
bool frm= false;
private void addToolStripMenuItem_Click(object sender, EventArgs e)
{
    if (frm== false)
    {
        fm= new form();
        fm.MdiParent = this;
        fm.Show();
        frm= true;
    }
    else 
    {
        if (fm.IsDisposed)
        {
            frm= false;
        }
    }
}

形式

form fm = new form();
fm.MdiParent = this;
fm.Show();
this.Close();

1 个答案:

答案 0 :(得分:1)

如果您希望自己的函数addToolStripMenuItem_Click始终打开fm(假设它已被处理),那么在else条件下您也需要fm.show()。你可以尝试这样的事情......

    private void addToolStripMenuItem_Click(object sender, EventArgs e)
    {
        if (!frm || fm.IsDisposed)
        {
            if (fm != null && fm.IsDisposed) { frm = false; }

            fm = new form();
            fm.MdiParent = this;
            fm.Show();
            frm = true;
        }
    }

这可能会让你的bool frm过时,但是如果你将它用于别的东西,我就把它留下来。