.NET Winform桌面应用程序禁用dpi缩放

本文内容适用:.NET6 ~ .NET9

.NET8 Winform桌面应用程序在笔记本电脑运行,会发现图片不能正常显示,出现缩小等现象,严重影响用户体验。

没有禁用dpi缩放

下图中图标,包括登陆、取消两个按钮的图标显示不正常:

下图的背景图片以及所有按钮图标显示不正常:

禁用dpi缩放效果:正常

解决方案

禁用dpi缩放

Program.cs

复制代码
//禁止dpi缩放
Application.SetHighDpiMode(HighDpiMode.DpiUnaware);
WindowsFormsSettings.LoadApplicationSettings();
WindowsFormsSettings.AllowDpiScale = false;

app.manifest 清单文件

在主程序添加 app.manifest 清单文件

设置 dpiAware = false

HTML全选

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

专注.NET技术、C/S架构开发框架软件

C/S框架网 - 开发框架文库

appsettings.json

复制代码
{
  "EnableWindowsFormsHighDpiAutoResizing": false,
}

相关文章

CSFrameworkV6.1旗舰版快速开发框架

通用进销存+ERP系统基础框架(C#+.NET7+EF)Demo下载

相关推荐
Linux Huang1 小时前
已在此计算机上安装相同或更高版本的 .NET Framework 4”安装报错问题
.net
PfCoder4 小时前
C# 事件(Event)核心概念
开发语言·c#
PfCoder4 小时前
C# 中泛型(Generics)‌的核心概念
开发语言·windows·c#
Damon小智7 小时前
C#进阶-ASP.NET网站会话固定漏洞的解决
网络安全·c#·asp.net·漏洞修复·会话固定
醇醛酸醚酮酯10 小时前
Visual Studio里的调试(debugging)功能介绍
visual studio·调试
咩咩觉主10 小时前
C# &Unity 唐老狮 No.10 模拟面试题
开发语言·unity·c#
牛轧糖nhh10 小时前
Visual Studio2022 中的键盘注释快捷方式
ide·visual studio
初级代码游戏11 小时前
VSTO(C#)Excel开发 系列目录 含源码发布
c#·excel·源码·vba·vsto
初级代码游戏11 小时前
VSTO(C#)Excel开发13:实现定时器
c#·excel·vba·定时器·vsto