LayoutMdi fails in form's OnLoad event

不羁的心 提交于 2019-11-28 06:44:14

问题


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

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!