C# WinForm在高分辨率下界面模糊问题的解决

摘要:
WinForm界面在高分辨率下模糊。采用WinForm编程方法进行开发。VS中设计的菜单和界面非常清晰,菜单和控件上的字体在运行时变得非常模糊。WPF编程可以解决这个问题。使用WPF技术复制实现软件是不现实的。)将窗体的AutoScaleMode属性更改为Font,并在窗体的构造函数中添加两行代码以调整窗体上的字体大小。更改程序的配置文件以在程序运行时自动检测屏幕分辨率。

前言

昨天刚搞定了DevExpress,今天就遇到了之前遇到过的一个问题,那就是WinForm在高分辨率下界面模糊。我的开发环境是Windows10 64位和VS2010,电脑屏幕分辨率为1920*1080,采用的是WinForm程序设计方法开发。在程序运行时遇到了这样一个问题,在VS设计的很清晰的菜单和界面,运行的时候菜单和控件上字体变得很模糊,界面大小也发生了变化。于是上网寻求解决办法,网友给出的解决方案有以下3种。

  • WinForm对高分屏的支持不好,用WPF程序设计可以解决该问题。(这是一个可行的办法,但是短期内较好的掌握WPF,并用WPF技术重现实现软件不太现实)
  • 更改窗体的AutoScaleMode属性为Font,并在窗体的构造函数中增加两行代码调整窗体上字体的大小。本人反复尝试,该方法行不通。
  • 更改程序的配置文件,在里面添加几行代码,使程序运行时自动检测屏幕分辨率,在高分屏时禁用系统缩放。

第三种方案的解决思路是正确的,就是要检测屏幕的分辨率,高分屏时禁用系统的缩放,因为现在Win10 高分屏默认字体放大125,这样会导致我们在程序中设计好的界面字体模糊。

具体步骤

  1. 选择当前项目,单击鼠标右键,选择【添加】|【类】;
  2. 选择【应用程序清单文件】;
  3. 打开刚才建立的清单文件,添加下面的代码;
  4. 保存运行,发现修复了界面模糊问题。
<application xmlns="urn:schemas-microsoft-com:asm.v3">
  <windowsSettings>
    <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
  </windowsSettings>
</application>

  PS:有时候按照上面步骤可能不成功,关掉程序重新打开运行后发现分辨率已协调,亲测有效。

转自:https://zhuanlan.zhihu.com/p/128588859

免责声明:文章转载自《C# WinForm在高分辨率下界面模糊问题的解决》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Visio中插入公式DataX环境配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android百度地图开发-第一篇:申请、搭建百度地图

一、前言 这是第一篇关于Android使用百度地图的学习记录,主要记录:   1.在百度地图开发者平台上申请API Key。   2.在自己的应用中加入百度地图的Android版SDK。   3.在自己的应用中显示一个地图。 二、在百度地图开发者平台上申请API Key 百度地图开发者平台地址:http://lbsyun.baidu.com/index....

.net下导致Session失效的一种情况:js教本中使用window.open和window.showModalDialog时需要注意

在项目中碰到过一种情况先用window.open打开1.aspx,1.aspx中用window.showModalDialog打开2.aspx,2.aspx中用window.open打开3.aspx,那么在3.aspx中取不到Session中的值。       于是我先做了一个default.aspx页面,向Session中存入值,在后面的三个页面中,分别...

抓取Web网页数据分析

通过程序自动的读取其它网站网页显示的信息,类似于爬虫程序。比方说我们有一个系统,要提取BaiDu网站上歌曲搜索排名。分析系统在根据得到的数据进行数据分析。为业务提供参考数据。   为了完成以上的需求,我们就需要模拟浏览器浏览网页,得到页面的数据在进行分析,最后把分析的结构,即整理好的数据写入数据库。那么我们的思路就是:   1、发送HttpRequest请...

小程序下拉刷新

  1、通过scroll-view实现   开始用scroll-view组件,通过scroll-view自带的触发下拉刷新、上拉加载事件。   在iOS下,可以正常触发,但在安卓机型下,必须先上滑一段距离再下滑,才能够触发下拉刷新事件,体验不太好。向小程序官方反馈,给我的回答是安卓机型不支持反弹效果。   上图是官网中关于scroll-view的内容,顺...

20150916自动化测试之Appinum For Android(环境搭建之下载更新安装AndroidSDK包)

  在经历一个多星期的延迟后,终究是运气极好,解决了Android SDK更新时遇到的google访问问题   遇到的问题:      解决方法:   1.启动 Android SDK Manager ;  2.打开主界面,选择Tools->Options;  3.在弹出的窗口中,代理服务器输入mirrors.neusoft.edu.cn,端口:80...

可信计算基础实验一——开发环境的搭建(kali)

可信计算基础实验一——开发环境的搭建(kali) TPM仿真环境结构 上图即为TPM仿真环境软件包依赖关系图,按由下往上按部就班的进行安装。 安装步骤 1.m4与gmp的安装 依照软件包依赖关系图,我们看到安装gmp前,我们要先安装m4。 m4简介:m4 是一种宏处理器,它扫描用户输入的文本并将其输出,期间如果遇到宏就将其展开后输出。m4 可用作编译器的...