Supporting DPI and Default Font Changes
So I'm trying to figure out how the Form's AutoScaleMode property can possibly help to support a system with a font or DPI that is different from my work development machine.
From the SDK:
AutoScaleMode Enumeration
public enum AutoScaleMode
None Automatic scaling is disabled. Font Controls scale relative to the dimensions of the font the classes are using, which is typically the system font. Dpi Controls scale relative to the display resolution. Common resolutions are 96 and 120 DPI.
By default .NET 2.0 Forms use AutoScaleMode.Font.
So I designed a sample form on my Windows XP, Tahoma 8 pt, 96 DPI development machine. Then I tried it out on a
The results were not encouraging, as you can see in this screenshot:
The AutoScaleMode property was not designed to enable a .NET Form for support of different font or DPI settings. So what is the proper way to support different font and DPI settings?
The correct way is to scale the controls, the form itself and the text within. This sounds very complicated, but the layout controls (TableLayoutPanel and FlowLayoutPanel), combined with the AutoSize property, make this considerably less difficult.
链接地址: http://www.djcxy.com/p/74538.html上一篇: Visual Studio 2010专业版:如何访问模块窗口?
下一篇: 支持DPI和默认字体更改