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、保存,然后重新生成解决方案。解决自动拉伸问题。

相关推荐
caimouse13 分钟前
reactos编码规范
c语言·开发语言
xieliyu.4 小时前
Java算法精讲:双指针(三)
java·开发语言·算法
CryptoPP5 小时前
快速对接东京证券交易所API数据:实战指南与代码示例
开发语言·人工智能·windows·python·信息可视化·区块链
ZC跨境爬虫5 小时前
跟着 MDN 学JavaScript day_7:数学运算与逻辑判断实战测试
开发语言·前端·javascript·学习·ecmascript
阳区欠6 小时前
【LangChain】LLM基础介绍
开发语言·python·langchain
Jinkxs7 小时前
Java 跨域14-Java 与区块链(Hyperledger)集成
java·开发语言·区块链
晨曦中的暮雨8 小时前
Golang速通(Javaer版)
java·开发语言·后端·golang
小小编程路8 小时前
Python 还有容器类型互转、进制转换、字符编码转换
开发语言·windows·python
qeen878 小时前
【C++】类与对象之类的默认成员函数(二)
android·c语言·开发语言·c++·笔记·学习
CRMEB系统商城8 小时前
CRMEB多商户系统(Java)v2.3公测版发布
java·开发语言·人工智能·小程序·开源·php