你好guyes我有一个问题我有1个父母形式和3个孩子我只是想打开他们最大化但是当我在左侧做这个3控制.如何在没有此控件的情况下打开一个表单.如果我以错误的方式做这件事,请告诉我一些mdi对这些事情好吗?
请看这张图片http://img440.imageshack.us/img440/6831/mdinz.jpg http://img139.imageshack.us/img139/4687/mdi1.jpg
这是MDI实现中的已知错误,在父构造函数中创建最大化子窗口时触发.这是一个例子:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
var child = new Form2();
child.MdiParent = this;
child.WindowState = FormWindowState.Maximized;
child.Show();
}
}
Run Code Online (Sandbox Code Playgroud)
您将看到两次显示最小/最大/恢复字形,恢复子窗口会在屏幕上显示MDI条,就像在第一个屏幕截图中一样.解决方法是将子创建代码移动到OnLoad()方法.像这样:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
var child = new Form2();
child.MdiParent = this;
child.WindowState = FormWindowState.Maximized;
child.Show();
}
}
Run Code Online (Sandbox Code Playgroud)