电脑分辨率过大,可以调低分辨率/显示比例100%
但是这个方法会使整个电脑的图标变小,间距增大,操作更困难,不推荐
VS通知提示“自动缩放比例为200%,是否更改为100%”,改完后vs的ui界面会变模糊,不推荐
方法1:改autoscalemode为none
这个操作会使运行的界面比例大于在VS中显示的比例
可能因为vs中是按照200%比例缩放,运行后的界面比例是100%
方法 2:为开发的应用程序启用DPI感知(使用deeepseek解答)
1.WinForms应用:在Program.cs中添加以下代码:
Application.SetHighDpiMode(HighDpiMode.PerMonitorV2);
方法 3:使用清单文件(方法2在 .NET 4.8 及以下版本不起作用时使用)推荐
如果必须使用 .NET Framework(如 4.8),需通过 清单文件 启用 DPI 感知:
1.右键项目 → 添加 → 新建项 → 选择 应用程序清单文件 (app.manifest)。
2.取消注释以下内容:
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>PerMonitorV2
<longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware>
</windowsSettings>
</application>
起作用的是PerMonitorV2,需要自己加上
3.右键项目 → 属性 → 在 应用程序 选项卡中,将 清单文件 设置为 app.manifest。(默认添加)
但PerMonitorV2在windows10以下版本不起效果,可能仍然会有变形,而且每次添加很麻烦
未完待续。。。