问题
Hello I have OnLoad eventhandler like this:
private void MainView_Load(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileVertical);
}
But nothing happens. How do I make it work?
回答1:
Yes, doesn't work. Probably because the child windows aren't visible yet. It works fine in the Shown event:
protected override void OnShown(EventArgs e) {
var f2 = new Form2();
f2.MdiParent = this;
f2.Show();
f2 = new Form2();
f2.MdiParent = this;
f2.Show();
this.LayoutMdi(MdiLayout.TileVertical);
}
回答2:
Either that or in the .MdiChildActivate() event handler of the MDI parent form:
private void MDIParent_MdiChildActivate(object sender, EventArgs e)
{
this.LayoutMdi(MdiLayout.Cascade);
}
来源:https://stackoverflow.com/questions/2835747/layoutmdi-fails-in-forms-onload-event