AutoScaleMode.Inherit不会继承

时间:2010-03-23 14:52:53

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

我有一个包含在标签页中的用户控件。表单已设置AutoScaleMode = AutoScaleMode.Font,UserControl已设置AutoScaleMode.Inherit。

现在,当我放大表单的字体大小时,字体也会在用户控件中放大,但控件内容不会缩放。如果我在用户控件上明确设置AutoScaleMode.Font,那么它可以正常工作。

AutoScaleMode.Inherit不应该这样工作吗?

1 个答案:

答案 0 :(得分:1)

MSDN有一个明确的警告:

  

在.NET Framework 1.0和   1.1,使用更简单的机制支持自动缩放   依赖于当前的系统字体。   这种机制现在已经过时了   仍然支持向后   兼容性。你可以获得   通过设置较旧的缩放行为   包含的AutoScale属性   形式为真,这也将   隐含地设定了   ContainerControl.AutoScaleMode   属性为无。相反,设定   ContainerControl.AutoScaleMode   表单的属性将设置AutoScale   为false,启用较新的缩放   .NET引入的机制   框架版本2.0。

所以:第一个问题:你使用的是哪个框架版本?

第二个猜测:在初始化表单后是否添加了控件?