repass repassif (repass == null)
            {
                repass = new repass();
                repass.MdiParent = this;            }
            else
            {
                if (repass.IsDisposed)
                {
                    repass = new repass();
                    repass.MdiParent = this;
                }
            }
            repass.Show();

解决方案 »

  1.   

    对象不能跟类名相同
    protected void showrepass()
    {
        repass rp;    if (rp == null)
                {
                    rp = new repass();
                    rp.MdiParent = this;            }
                else
                {
                    if (rp.IsDisposed)
                    {
                        rp = new repass();
                        rp.MdiParent = this;
                    }
                }
                rp.Show();
    }调用:
    showrepass();
      

  2.   

    repass ShowChild(repass _repass)
    {
    if (_repass == null)
                {
                    _repass = new repass();
     
                }
                else
                {
                    if (_repass.IsDisposed)
                    {
                        _repass = new repass();
                    }
                }
                         _repass.MdiParent = this;
               _repass.Show();return _repass;}
      

  3.   

    大侠们没有理解我的意思(都怪我没有说明白),我的思意是这样的:我在一个MDI窗口中要打开很子窗体 ,但我不想打开每个子窗体的时间都写上面类似的代码,我想写一个方法通过传递参数来进行调用!!比如说我想打开一个名叫 kk 的子窗体:ShowChild(kk); 我想是这样调用,这个方法如何写???????????
      

  4.   

    private void ShowMDIChildForm(Form childForm)
    {
                               if(childForm==null) return;
    if(this.ActiveMdiChild != childForm)
    {
    for(int i=0;i<this.MdiChildren.Length;i++)
    {
    if(MdiChildren[i] == childForm )
    {
    childForm.BringToFront();
    return;
    }
    } //childForm.WindowState = FormWindowState.Maximized;
    childForm.MdiParent = this;
    childForm.Show();
    }
    }
      

  5.   

    childForm.MdiParent = this;this 会在类中报错