ChangePWD change_pwd;
        private void MenuItem21_Click(object sender, EventArgs e)
        {
            if (change_pwd == null || change_pwd.IsDisposed)
            {
                change_pwd = new ChangePWD();
                
                for (int x = 0; x < this.MdiChildren.Length; x++)
                {
                    Form tempChild = (Form)this.MdiChildren[x];
                    tempChild.Close();
                }
                
                change_pwd.MdiParent = this;
                change_pwd.Tag = this.statusBarPanel5.Text.Trim();
                //change_pwd.WindowState = FormWindowState.Maximized;
                
                change_pwd.Show();
            }
        }
以上代码是在主窗体.cs中,ChangePWD是一个窗体,功能就是点击主窗体中的MenuItem21弹出ChangePWD,但是加了change_pwd.MdiParent = this;就不行,注释掉就可以

解决方案 »

  1.   

    主窗体的 IsMdiContainter 设为true了吗?
      

  2.   

    for (int x = 0; x < this.MdiChildren.Length; x++)
                    {
                        Form tempChild = (Form)this.MdiChildren[x];
                        tempChild.Close();
                    }
    把这段注释掉看可以不
      

  3.   


    加了change_pwd.MdiParent = this之后MenuItem21_Click就弹不出ChangePWD窗口for循环去掉也不可用,效果都是没有任何的反应
      

  4.   

    MDI之后的确不像一般窗体Show的Popup效果。但是不可能看不到change_pwd吧。
    应该显示在MDI容器中。
      

  5.   

    我估计是你主程序启动的时候设置错了吧 检查一下 program.cs 里面启动程序 
      

  6.   

     for (int x = 0; x < this.MdiChildren.Length; x++)
                    {
                        Form tempChild = (Form)this.MdiChildren[x];
                        tempChild.Close();
                    }
    这一段是什么意思?
      

  7.   

    窗体的 IsMdiContainter 设为true了吗?
    觉得这个可能性大?
      

  8.   


    MdiParent父窗体上放控件了,控件挡住了吧。
      

  9.   

               if (change_pwd == null || change_pwd.IsDisposed)
                {
                    change_pwd = new ChangePWD();
                    
                    for (int x = 0; x < this.MdiChildren.Length; x++)
                    {
                        Form tempChild = (Form)this.MdiChildren[x];
                        tempChild.Close();
                    }
    是什么意思啊 lz