在运行时添加的C#TabPages不会自动调整父表单

时间:2010-01-25 01:01:15

标签: c# runtime autosize tabpage

我有一个包含TabControl的简单表单,其中TabPages是在运行时添加的。我已经完成了所有这些工作几乎,因为我想要它,但是当我将表单设置为自动调整时,它会忽略计算中的运行时TabPages ...我怎么能强制将表单强制执行延迟自动调整大小,直到添加了TabPages,或者在添加新的TabPage时强制重新计算表单?

编辑:为了记录,我正在通过以640x480启动我的应用程序(使用MinimumSize属性)并包含750宽的控件来测试它。

3 个答案:

答案 0 :(得分:0)

使用SuspendLayout()ResumeLayout()可以做到吗?这是解释其工作原理的link

首先致电SuspendLayout(),然后添加标签页,然后ResumeLayout()

希望这有帮助, 最好的祝福, 汤姆。

答案 1 :(得分:0)

如何使用TabPage.Dock = DockStyle.Fill?

答案 2 :(得分:0)

我怀疑您不再遇到此问题,但这对于寻找解决方案的其他人可能会有所帮助。您可以将TabControl的MinimumSize设置为您添加的最大TabPage的MinimumSize。 TabPages没有自己的MinimumSize,因此您必须在TabPage中有一个完全停靠的控件,您可以在其上检查MinimumSize。

我已经有了这个设置(使用FlowLayoutPanel布局TabPage的内容)所以它相对简单,不确定是否对其他人来说这么容易。我知道这对问题来说是一个非常令人不快的“解决方案”,但是我找不到另一种强制TabControl正确更新的方法。