WinForm分辨率适应-高DPI自动缩放

背景

最近学习 WinForm 程序,程序在搭配了更高分辨率屏幕的 Windows 10 系统上界面模糊。

原因

WinForm 对高分辨率屏幕的适配并不是很好,当分辨率较高时,Windows 系统会将程序里面的字体进行缩放,在 Windows 10 系统尤其严重,这将导致程序的界面大小变化,字体也会变得模糊。

解决

注意事项:该方法适用于 .NET Framework 版本大于等于4.5的程序。

1.右键项目,添加应用程序清单文件

2.将应用程序清单文件中的部分代码取消注释

3.在程序配置文件(app.config)的appSettings节点下添加如下代码

<appSettings>
	<add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />
</appSettings>

4.重新编译生成项目,打开程序查看效果

恢复正常,变得清晰喽~