C# Win10缩放导致Winform字体模糊的解决方法
问题描述
现在的笔记本电脑分辨率很高,基本上能达到1920*1080以上,因为笔记本的屏幕小,在这样的分辨率下一切看着都很小,尤其是文字,根本看不清,所以Win10很人性化的提供了屏幕缩放功能,一般默认放大比例为150%、200%等,如图所示:

在这种情况下,我们用VS开发的Winform窗体显示就有问题了,文字和图像都变得模糊了
解决方案
前置步骤
设置所有的Form窗口的AutoScaleMode为Dpi模式

方法一【添加应用程序清单文件】
推荐使用该方法
1、解决方案资源管理器中,在当前项目上【右键】→ 【添加】→【新建项】

2、找到【应用程序清单文件(仅限Windows)】→【添加】

3、编辑生成的app.manifest文件,找到<application xmlns="urn:schemas-microsoft-com:asm.v3">去掉注释

4、保存文件,运行你的程序,窗体上的一切都清晰了!!
方法二【调用Windows API】
打开Program.cs文件,在Main()方法中添加Windows API函数的调用,如下:
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
if (Environment.OSVersion.Version.Major >= 6)
{
SetProcessDPIAware();
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern bool SetProcessDPIAware();
}
C# Win10缩放导致Winform字体模糊的解决方法的更多相关文章
- Qt在Linux环境下应用程序字体模糊的解决方法(先改成使用默认字体,然后使用qtconfig配置)
这两天一直在用Qt实现一个跨平台的软件.软件之前在Windows上编写的,后来放到里Ubuntu 10.10下编译.程序运行时遇到一个很棘手的问题,界面文本非常模糊.后来在网上查阅了好几天的资料,经历 ...
- WPF图片放大后模糊的解决方法
原文:WPF图片放大后模糊的解决方法 WPF中显示图片的方式很多,可以用Image控件来显示图像,或者直接设置一个控件的Background.图片的放大也很简单,直接设置显示图片的控件的Width和H ...
- MVC4升级MVC5导致原项目出错的解决方法
原文:MVC4升级MVC5导致原项目出错的解决方法 出现安全透明方法"WebMatrix.WebData.PreApplicationStartCode.Start()"尝试访问安 ...
- Win10系统更新提示错误0xc1900403的解决方法
Win10系统自从发布上线以来,一直有不断地进行更新,而每次更新也给我们用户带来了大大小小不同的惊喜.但是近来一些用户反应说Win10系统更新一直失败,并出现0xc1900403的错误代码提示. 对于 ...
- 安装sqlserver导致80端口被占用解决方法
安装sqlserver导致80端口被占用解决方法 系统占用的端口一般都是微软官方的产品占用的.所以这个时候主要考虑到几个服务: SQL Server导致.其中很有可能是SQL Server Repor ...
- windows 10放大125%后字体模糊(已解决)、win10 文字放大之后变模糊 解决办法
windows 10放大125%后字体模糊解决办法 百度搜索 "Windows10_DPI_FIX" 或者用这个地址下载下载地址 https://gallery.technet ...
- Manjaro安装配置美化字体模糊发虚解决记录
Manjaro安装记录 前言: 记录自己Manjaro18安装的一些坑,避免下次满互联网找解决方法.在此之前试过Manjaro.Ubuntu.Fedora.linux Mint系统的pac.yum ...
- win10x软件字体有阴影很模糊的解决方法(软件分辨率与系统分辨率不一致)
devC++,百度网盘等软件都有这种情况 拿百度网盘举例:界面比较大,不能缩小,字体有阴影比较模糊 解决方法: 桌面右击百度网盘,选择属性, 点击兼容性,更改高DPI设置,替代高DPI缩放行为前面打上 ...
- 【转】Winform程序未捕获异常解决方法 EventType clr20r3 P1
from:http://blog.csdn.net/chichaodechao/article/details/8294922 在开发winform程序时,用到多线程,在服务器部署后运行,老是自动关才 ...
- Win10更新后蓝牙出现故障的解决方法
昨天Win10自动更新后,我发现我的键盘突然就不管用了,检查了一下发现原来蓝牙没有打开,同时任务栏中的蓝牙图标也不见了. 不久之前,这样的情况已经出现过了一次,那次好像更新系统后就好了,但这次是系统更 ...
随机推荐
- 一个免费、时尚、强大的 Windows GitHub 客户端
前言 今天大姚给大家分享一个.NET开源(MIT License).免费.时尚.功能强大的 Windows GitHub 客户端:FluentHub. 工具功能 多任务标签页. 上下文菜单扩展. 对问 ...
- WPF 设置第二次打开程序直接弹出第一次打开的程序
激活已经打开窗口函数[DllImport("user32.dll")]private static extern bool SetForegroundWindow(IntPtr h ...
- GIT文件上传演示
Be Written By Handat.憨大头 注:以下内容默认你已经做好了git工具的用户账户配置. (1)创建Gitee线上代码仓库,HTTPS协议地址就是仓库地址,如例https://gite ...
- Opencv笔记(11)随机数发生器cv::RNG
一个随机数对象(RNG)用来产生随机数的伪随机序列.这样做的好处是你可以方便地得到多重伪随机数流.一旦随机数发生器创建,就会开始按需提供产生随机数的"服务",无论是平均分布还是正态 ...
- C++笔记(2)拷贝构造函数
拷贝构造函数是一种特殊的构造函数,它在创建对象时,是使用同一类中之前创建的对象来初始化新创建的对象. 如果在类中没有定义拷贝构造函数,编译器会自行定义一个.如果类带有指针变量,并有动态内存分配,则它必 ...
- K8S部署ECK采集日志
1. 部署nfs 1. 安装nfs #所有节点安装 yum install -y nfs-utils 在master节点创建nfs共享目录 mkdir -pv /data/kubernetes 编写配 ...
- 开源高性能结构化日志模块NanoLog
最近在写数据库程序,需要一个高性能的结构化日志记录组件,简单研究了一下Microsoft.Extensions.Logging和Serilog,还是决定重造一个轮子. 一.使用方法 直接参考以 ...
- json字符串忽略null,忽略字段,首字母大写等gson,jackson,fastJson实现demo,T data JSON.parseObject json转换
json字符串忽略null,忽略字段,首字母大写等gson,jackson,fastJson实现demo package com.example.core.mydemo.json.vo; import ...
- Docker PHP如何启用MySQL扩展
我下载的镜像是PHP7版本:docker pull php:7.4.30-fpm,容器起名为php7 PHP镜像官方提供了帮助文档,其中提到了相关的命令,这里推荐一篇博客,该博客对于扩展的几个相关命令 ...
- Merry Christmas 礼物
Tips:当你看到这个提示的时候,说明当前的文章是由原emlog博客系统搬迁至此的,文章发布时间已过于久远,编排和内容不一定完整,还请谅解` Merry Christmas 礼物 日期:2020-12 ...