tags:

views:

27

answers:

2

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  A: 

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);
    }
Hans Passant
I will try this approach
Kugel
A: 

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);
}
pkspence