Winforms在不同分辨率的屏幕中缩放和切割问题

时间:2017-02-08 12:01:09

标签: c# .net winforms user-interface

我有一个桌面应用程序是Windows操作环境的开发人员。该应用程序是在1,280x720 Monitor上开发的。它在大多数具有正常屏幕分辨率的系统上运行良好。包括1080P和旧的17和15英寸显示器。

当谈到15"屏幕和1080P分辨率,应用程序首先正确显示,但使用控件后,窗口变小。文本变大,一些控件落在其他控件之上。

另一个问题是当用户将此尺寸设置调整为高

enter image description here

应用程序窗口获取剪切,但未显示完整内容。应用程序未全屏显示。 一位用户正在使用Windows Surface Pro并获得应用程序适应性,上述设置已经减少。但这使得应用程序太小,因此用户最终获得退款。

我没有定位到平板电脑(Surface Pro)用户。目标受众是桌面用户。

保持winforms GUI解决此问题的最佳方法是什么。

请指教。

1 个答案:

答案 0 :(得分:1)

您似乎正在寻找AutoScaleMode属性。这将允许您的控件根据用户的缩放级别更改大小'个人电脑(上图)。

'Creating a DPI aware application'的答案中有一些非常好的建议。但基本上是:

  • 将基本控件的AutoScaleMode(表单)设置为FontDpi
  • 从控件中删除尽可能多的自定义字体设置(这会将它们还原为默认的MS Sans Serif,大约8磅)

以标准缩放级别开发应用程序,然后在更大缩放的大屏幕上进行测试,看看它是如何进行的。

希望这有帮助