是这样的,我做好了两个窗体form1和form2,
form1里面包含一个button1,当我点击button1的时候,我在button1的点击事件里面写的代码是:
form2 f2=new form2();
f2.ShowDialog();实现了我所要的功能,但是现在我遇到个很纠结的问题是:
比如我打开“我的电脑”,这时候form2那个窗体显示在“我的电脑”前面,form1又在“我的电脑”后面。晕了,这个要怎么解决哦???请大家指点指点,在此先谢谢了。

解决方案 »

  1.   

    会这样吗?你把Form2的TopMost属性改为False就行了
      

  2.   

    form2 f2=new form2(); 
    f2.TopMost = false;
    f2.ShowDialog(); 
      

  3.   

    把你From1和Form2的TopMost属性都设为假
      

  4.   

    确实太纠结了,哈
    这是因为,窗口是一层一层重叠起来的,用showDialog,默认是会置于顶层的
      

  5.   

    想把那个form放后面就设置它的topmost=false
      

  6.   

    应该就是TopMost属性的问题,设置为false应该就可以了
      

  7.   

    窗体置前 
    TopMost=true;
    窗体最大化,用MDI显示子窗体
    f2.Owner = this;
    f2.ShowDialog( );this.WindowState = FormWindowState.Maximized           
      

  8.   

    TopMost属性可以设置窗体前置或后置
      

  9.   

    在问个问题也,
    f2.ShowDialog( )后,我想指定f2的Location和Size,怎么弄哦??我写的是:
    f2.ShowDialog();
    f2.Location = new Point(0, 80);
    f2.Size = new Size(415, 415);为什么显示出来的时候,不是我设定的Location和Size呢???
      

  10.   

    呵呵,最近也在搞这个。小问题也是一堆。对话框用ShowDialog()是模态显示,非模态显示用Show。
    如果TopMost属性设置为true则一直在最顶层。你尝试下在显示窗体时用:
    f2.StartPosition = FormStartPosition.Manual;//手动指定窗体的位置、大小
    f2.Location = new Point(0, 80); 
    f2.Size = new Size(415, 415); 
    f2.ShowDialog(); 我测试正常,我就是这么干的。FormStartPosition还有其他的很多选项,你可以试试。