我有一个包含在标签页中的用户控件。表单已设置AutoScaleMode = AutoScaleMode.Font,UserControl已设置AutoScaleMode.Inherit。
现在,当我放大表单的字体大小时,字体也会在用户控件中放大,但控件内容不会缩放。如果我在用户控件上明确设置AutoScaleMode.Font,那么它可以正常工作。
AutoScaleMode.Inherit不应该这样工作吗?
答案 0 :(得分:1)
MSDN有一个明确的警告:
在.NET Framework 1.0和 1.1,使用更简单的机制支持自动缩放 依赖于当前的系统字体。 这种机制现在已经过时了 仍然支持向后 兼容性。你可以获得 通过设置较旧的缩放行为 包含的AutoScale属性 形式为真,这也将 隐含地设定了 ContainerControl.AutoScaleMode 属性为无。相反,设定 ContainerControl.AutoScaleMode 表单的属性将设置AutoScale 为false,启用较新的缩放 .NET引入的机制 框架版本2.0。
所以:第一个问题:你使用的是哪个框架版本?
第二个猜测:在初始化表单后是否添加了控件?