当我在代码中调整子表单的大小时,如何让父表单自动调整大小以包装子表单?我为父表单设置了autosize属性为true。我在尺寸改变后调用了this.MdiParent.PerformLayout()。我不想手动调整父表单的大小。
答案 0 :(得分:0)
MDI Parent的Control集合中有一个名为MdiClient的隐藏控件。您可以使用它来帮助确定任何停靠的Panel或ToolStrips占用的空间,然后相应地调整父窗体的客户区域:
MdiClient mc = this.Controls.OfType<MdiClient>().First();
int otherHeight = this.ClientSize.Height - mc.ClientSize.Height;
this.ClientSize = new Size(this.ClientSize.Width,
this.ActiveMdiChild.Height + otherHeight);