Winform界面运行变形解决方案
-Begin-
现在高分屏的电脑越来越多,2K屏,4K屏层出不穷,对于.net开发人员来说,尤其是Winform开发者,分辨率一直是个比较头疼的事情,屏幕分辨率高了,如果仍然设置显示100%,会导致字体非常小,影响观看,因此很多时候推荐的都是150%,200%,如果主显示器设置不是100%,打开Winform项目时,会以同样的百分比进行窗体显示,会导致界面变形等一系列的问题。
基于这种情形,在研究一番之后,给大家提供一下解决方案,主要有以下三种解决方案:
第一种是根据提示设置100%重启VS,但是这种每次都要重启,很麻烦,
第二种是我们等会要讲的,
第三种是设置主显示器为100%,如果能够接受100%显示,那直接设置成100%,然后重新设置一下UI布局,重启VS或者重启电脑就行了。
对于第二种解决方案,就是修改注册表:
打开注册表,找到这个路径:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
右侧添加一个选项:
-
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe 针对VS2017
-
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\devenv.exe 针对VS2019
这里是以社区版为例,这个其实就是VS的安装目录,如果是其他版本,将Community修改为对应版本即可。
接着设置类型和值:
Type: REG_SZ
Value: DPIUNAWARE
然后就可以了。
如果需要关掉这个提示:
可以按照下面的方法执行(改成False):
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构