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

相关推荐
kaikaile199511 分钟前
34节点配电网牛顿-拉夫逊潮流计算 + 分布式电源(DG)多场景分析的 MATLAB
开发语言·分布式·matlab
QT 小鲜肉11 分钟前
【C++基础与提高】第一章:走进C++的世界——从零开始的编程之旅
开发语言·c++·笔记·qt
java1234_小锋14 分钟前
MyBatis如何处理懒加载和预加载?
java·开发语言·mybatis
@木辛梓19 分钟前
模版 c++
开发语言·c++
oioihoii27 分钟前
C++中的线程同步机制浅析
开发语言·c++
不知几秋1 小时前
配置JDK和MAVEN
java·开发语言·maven
没有bug.的程序员1 小时前
Spring Cloud Gateway 路由与过滤器机制
java·开发语言·spring boot·spring·gateway
.NET修仙日记1 小时前
C# 记录类型(record)全面解析:从概念到最佳实践
c#·.net·.net core·record·学习指南
枫叶丹41 小时前
【Qt开发】布局管理器(五)-> QSpacerItem 控件
开发语言·数据库·c++·qt
_OP_CHEN1 小时前
C++进阶:(八)基于红黑树泛型封装实现 map 与 set 容器
开发语言·c++·stl·set·map·红黑树·泛型编程