700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > C# Win10缩放导致Winform字体模糊的解决方法

C# Win10缩放导致Winform字体模糊的解决方法

时间:2019-04-16 10:40:21

相关推荐

C# Win10缩放导致Winform字体模糊的解决方法

问题描述

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

在这种情况下,我们用VS开发的Winform窗体显示就有问题了,文字和图像都变得模糊了

解决方案

前置步骤

设置所有的Form窗口的AutoScaleModeDpi模式

方法一【添加应用程序清单文件】

推荐使用该方法

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();}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。