现在高分屏的电脑越来越多,2K屏,4K屏层出不穷,对于.net开发人员来说,尤其是Winform开发者,
分辨率一直是个比较头疼的事情,屏幕分辨率高了,如果仍然设置显示100%,会导致字体非常小,影响观看,
因此很多时候推荐的都是150%,200%,如果主显示器设置不是100%,打开Winform项目时,会以同样的百分比
进行窗体显示,会导致后续很多问题。
基于此,在研究之后,给大家提供一下解决方案,其实官方对这问题也说得很清楚:
解决方案有三个:
第一种是根据提示设置100%重启VS,但是这种每次都要重启,很麻烦,
第二种是我们等会要讲的,
第三种是设置主显示器为100%,我觉得这种方案等于没说。
对于第二种解决方案,就是修改注册表:
打开注册表,找到这个路径:
HKEY_CURRENT_USERSOFTWAREMicrosoftWindows NTCurrentVersionAppCompatFlagsLayers
右侧添加一个选项:
- C:Program Files (x86)Microsoft Visual Studio2017CommunityCommon7IDEdevenv.exe 针对VS2017
- C:Program Files (x86)Microsoft Visual Studio2019CommunityCommon7IDEdevenv.exe 针对VS2019
这里是以社区版为例,这个其实就是VS的安装目录,如果是其他版本,将Community修改为对应版本即可。
接着设置类型和值:
Type: REG_SZ
Value: DPIUNAWARE
然后就可以了。
如果需要关掉这个提示:
可以按照下面的方法执行(改成False):
参考链接:https://docs.microsoft.com/en-us/visualstudio/designers/disable-dpi-awareness?view=vs-2019