我现在有一个mdiForm窗体,它下面有一个子窗体Form1,我现在还有一个窗体Form2想成为Form1的子窗体但一个窗体不可能既是父窗体,又是子窗体请问这个问题怎样解决谢谢

解决方案 »

  1.   

    应该不影响吧,form2的属性设置如
    form2.MdiParent = form1;
      

  2.   

    不行错误提示:
    被指定为此窗体的 MdiParent 的窗体不是 MdiContainer。
    参数名: value
      

  3.   

    把mdiForm作为程序入口点,然后在主窗体里打开Form1,再在Form1里打开Form2,是不是这个意思??那就用下面的语句好了,在mdiForm里设置按钮激发Form1,用下面的代码
    Form1 frm=new Form1();
     frm.ShowDialog();
    在Form1里激发Form2
    Form2 frm=new Form2();
     frm.ShowDialog();
    这样就可以了应该
      

  4.   

    不能ShowDialog()啊其它的窗体里面还有操作的而且好要给它在Form1里固定一个位置停泊下来
      

  5.   

    好想不行啊,找了半天,为什么不把form2与form1同级呢?这样form2不也可以定位了吗?
      

  6.   

    麻烦了同级之后Form2可以移出Form1,需求不允许,要求每个Form1级的窗口都有一个Form2,并且只能在窗体内的右下角
      

  7.   

    算了,做一个伪多级吧.
    针对:
    同级之后Form2可以移出Form1,需求不允许,要求每个Form1级的窗口都有一个Form2,并且只能在窗体内的右下角在Form1里画一个Form2就行了.
      

  8.   

    你做的这个是不是类似于RAD的东西,这个功能让搂主用用DockPanel吧,VS2005就是用它
      

  9.   

    是不是可以参考MS的CAB(composite UI application block),虽然是设计smartclient的,但是用户界面设计这块还是有参考的,不知道能否实现
      

  10.   

    我碰到过这种情况,但我只是在form1 弹出form2 form2操作完了,返回form1
    在form2操作的同时,不用操作其他窗体.方法是ShowDialog(),从form1弹出的form2不能做为父窗体的子窗体,因为他的父窗体应该是form1.
    关注你的问题.