将.Net UserControl添加到TabPage时调整大小问题

时间:2010-04-28 22:25:34

标签: c# .net winforms user-controls tabpage

我有一个复杂的Windows窗体GUI程序,它有很多自动控件生成和操作。我需要做的一件事是将自定义UserControl添加到新实例化的TabPage。但是,当我的代码执行此操作时,我会自动调整大小导致格式变得丑陋的事件。如果没有详细说明可能涉及的所有不同容器,基本问题是:

在代码中的某一点,我创建了一个新的标签页:

TabPage tempTabPage = new TabPage("A New Tab Page");

然后我将它设置为我想要维护的特定大小:

tempTabPage.Width = 1008;
tempTabPage.Height = 621;

然后我将它添加到TabControl:

tabControl.TabPages.Add(tempTabPage);

然后我创建了一个我想要出现在新添加的TabPage中的用户控件:

CustomView customView = new CustomView("A new custom control");

这就是问题所在。此时tempTabPage和customView的大小相同,没有填充或边距,它们是我希望它们的大小。我现在尝试将这个新的自定义UserControl添加到标签页,如下所示:

tempTabPage.Controls.Add(customView);

在进行此调用时,customView及其子控件的大小调整为更大,因此隐藏了部分customView。

任何人都可以给我任何关于寻找什么或可能导致这类问题的方向吗?

提前致谢。

3 个答案:

答案 0 :(得分:12)

UserControl的“AutoScaleMode”属性应设置为“None”。

答案 1 :(得分:4)

如果您希望customView填充TabPage

像这样使用Dock

tempTabPage.Controls.Add(customView);
customView.Dock = DockStyle.Fill;

然后customView将填写TabPage中的空格,但您必须处理customView的大小调整,以便正确显示子控件。

答案 2 :(得分:0)

我有同样的问题。 UserControl" AutoScaleMode"设置为"无"适合我。

相关问题