你就不用frm1 = new Form1();frm1.Show();你就直接Form1.Show();

解决方案 »

  1.   

    if(frm!=null)
    {
        frm.show();
    }
    else
    {
        frm=new Form1();
        frm.show();
    }或者 :
    if(frm==null)
    {
        frm=new Form1();
    }
    frm.show();
      

  2.   

    Form subForm = null;
    private void button1_Click(object sender, EventArgs e)
    {
    if (subForm == null || subForm.IsDisposed)
    {
    subForm = new Form();
    //this.AddOwnedForm(subForm);
    }
    subForm.Show(this);
    }
      

  3.   

    为了显示本窗体,一定要把Form XXX;这句代码写在button1_Click事件之外
      

  4.   

    其实重新些一个new是没有关系的啊,实现功能就号嘛
      

  5.   

    看这篇帖子http://community.csdn.net/Expert/topic/5494/5494977.xml?temp=1.642108E-04
    不要用new方法,这样内存占用会不断增大