如何确保表单的布局(特别是字体)将是我所期望的?

时间:2012-06-14 05:27:22

标签: .net winforms fonts

通常我会创建一个winforms应用程序,当我运行它时,一切看起来都很棒。然后我去了一个用户的计算机,我发现标签是嘎吱嘎吱的,字体更大,导致文本被切断等等。发生了什么?我该如何防止这种情况?

我特别在较新的Windows操作系统上看到这一点,即Windows 7等。如何在多个Windows操作系统版本上为所有用户提供相同(或至少不错)的表单?

1 个答案:

答案 0 :(得分:2)

如果由于系统上的字体较大或者系统的DPI与您的预期不同而导致UI变得混乱,那么您应该做以下几件事:

  • 使用固定坐标和尺寸
  • 使用对接和锚定来定位和控制大小
  • 使用AutoSize根据内容调整控件大小
  • 使用Graphics.MeasureString()来计算字符串的大小,而不是假设使用fontsize

修改

当然也可以分发字体(如果合法)以确保正确/预期的字体可用,但您仍需要预测各种DPI设置。