【问题标题】:Windows High DPI Scaling for WinFormWinForm 的 Windows 高 DPI 缩放
【发布时间】:2020-05-18 16:09:23
【问题描述】:

这是我遇到很多麻烦的事情。经过几天的试验,我终于弄清楚了如何正确扩展 WinForms。这也可能对其他人有所帮助。

有很多关于修改 app.manifest 或 app.config 文件的建议。该解决方案可能适用于早期版本的 Windows,但没有一个对我有用。安装我的应用程序后,图片和控件搞砸了(在 Visual Studio 中调试一切正常)。经过一些测试,我发现将“覆盖高 dpi 缩放”选项设置更改为“应用程序”对我有用。但我想在应用程序中支持这一权利,而不是修改某些 Windows 设置。

我偶然发现了一份 Windows 支持文档,其中解释说,他们已经使用最新版本的 Windows 更改了一些 DPI 缩放,并且旧方法可能无法正常工作。

【问题讨论】:

    标签: c# .net winforms scaling dpi


    【解决方案1】:

    您实际上需要做的就是按照以下步骤操作:

    1. 找到您的 app.config
    2. </startup><userSettings>之间,插入以下sn-p
    <System.Windows.Forms.ApplicationConfigurationSection>
      <add key="DpiAwareness" value="PerMonitorV2" />
    </System.Windows.Forms.ApplicationConfigurationSection>
    
    1. 保存文件并重新加载您的项目
    2. 确保您已从清单中删除任何其他调整
    3. 在您的主方法或入口点中设置此项

    Application.EnableVisualStyles()

    就是这样!在机器上安装后,您的应用程序在 4K 环境中应该看起来很棒。 如需进一步参考,请参阅this article from Microsoft.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-15
      • 1970-01-01
      • 2012-02-22
      • 2014-11-22
      • 1970-01-01
      • 2014-07-24
      • 2016-10-19
      • 2018-08-07
      相关资源
      最近更新 更多