C# Winform 在低DPI创建窗体后,在高DPI运行时,窗体会自动拉伸,导致窗体显示不全

C# Winform 在低DPI创建窗体后,在高DPI运行时,窗体会自动拉伸,导致窗体显示不全,

比如在分辨率为100% 的电脑创建C#项目,当运动到分辨率为125%的电脑运行时,后者运行的窗体会自动拉伸,窗体显示超出页面等问题。

选中项目,右键点属性》查看WINDOWS设置,修改app.manifest,启用下列功能(前面的'去掉)

修改文件:app.manifest

XML 复制代码
    <Application xmlns = "urn:schemas-microsoft-com:asm.v3" >
    <windowsSettings>
        <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
    </application>

第2种方法:

经过多次尝试,解决该问题比较方便的一个方式是,在项目中添加 应用程序清单文件即可。

具体步骤如下:

1、启动项目找到 添加 》添加新建项(选应用程序清单文件):

2、添加后在项目中找到添加的文件APP.manifest双击打开,

3、找到app2.manifest里面的内容,添加如下的内容:

XML 复制代码
    <Application xmlns = "urn:schemas-microsoft-com:asm.v3" >
    <windowsSettings>
        <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
    </application>

4、保存,然后重新生成解决方案。解决自动拉伸问题。

相关推荐
Aerelin1 分钟前
爬虫图片采集(自动化)
开发语言·前端·javascript·爬虫·python·html
枫叶丹44 分钟前
浙人医信创实践:电科金仓异构多活架构破解集团化医院转型难题
开发语言·数据库·架构
野生技术架构师4 分钟前
Kafka深度剖析:Topic-Partition-Segment 关系、分区策略与数据可靠性实现
kafka·c#·linq
小李小李快乐不已5 分钟前
图论理论基础(2)
java·开发语言·c++·算法·图论
Sheffi666 分钟前
Objective-C 黑魔法:Method Swizzling 的正确姿势与滥用风险
开发语言·macos·objective-c
AI_567811 分钟前
MES+物联网传感器重塑设备管理体系
开发语言·php
gc_229912 分钟前
学习C#调用AspNetCoreRateLimit包限制客户端访问次数(3:动态配置)
c#·限流·动态配置·coreratelimit
骇客野人12 分钟前
JAVA日常开发技术点总结
java·开发语言
杀死那个蝈坦14 分钟前
Redis 多级缓存:架构设计、核心问题与落地实践
开发语言·spring·青少年编程·golang·kotlin·maven·lua