C# 中子窗体最大化的问题
在 C# 中做 MDI 程序的时候,子窗体经常是被定义成最大化状态,在子窗体的属性里,把 WindowState 设置成 Maximized,然后在主窗体中用 frmChild.Show() 来显示,代码如下:
1 2 3 | frmChild fc = new frmChild(); fc.MdiParent = this; fc.Show(); |
运行的时候,会发现一个问题,子窗口并没有真正的最大化,而是窗口外框是最大化的,里面的控件还都是原来的位置,没有达到最大化的效果。
解决办法:在子窗体属性里把 WindowState 设置成 Normal,在代码中去设置这个属性值就可以了,代码如下:
1 2 3 4 | frmChild fc = new frmChild(); fc.MdiParent = this; fc.WindowState = FormWindowState.Maximized; fc.Show(); |
这样,运行就正常了。
在 VS2005 和 VS2008 中都是这样。