6

我有一个复杂的 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 的某些部分被隐藏。

谁能给我任何关于寻找什么或可能导致此类问题的方向?

提前谢谢。

4

3 回答 3

14

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

于 2010-06-09T17:23:02.003 回答
5

如果你想customView填充TabPage.

像这样使用Dock

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

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

于 2010-04-28T22:48:50.557 回答
0

I had the same issue. The UserControl's "AutoScaleMode" set to "None" works for me.

于 2014-08-13T12:48:00.603 回答