WPF软件花屏的解决方法

Win10操作系统更新后,软件花屏了!

WPF为啥还能出现花屏呢?

花屏是个什么现象?

即:WPF的界面不能正确渲染或及时刷新,导致整个界面会出现严重的残影,严重影响使用。

如果存在花屏,可出现步骤:

1.快速拖动窗口

2.窗口自动收起和展开

3.更改窗口大小

4.其他各种操作......

出现花屏的原因有多种,有可能是WPF的渲染线程挂了,也有可能是驱动问题。

这里主要描述驱动问题导致的花屏如何解决!

我们都知道,WPF的渲染,除了使用CPU渲染以外,还可以基于direct x进行渲染,以加快渲染速度。这个过程叫:硬件加速。如果显卡驱动存在兼容性问题,那么硬件加速很有可能会出现异常情况,比如说花屏。

解决此问题的思路也比较简单,关闭硬件加速更新显卡驱动

如果更新显卡驱动无效,那么我们可以在软件中关闭硬件加速。

我们在程序启动时候,加入如下代码:

cs 复制代码
//RenderMode.Default 会根据系统情况决定是否需要启用硬件加速。通常情况下都是打开状态,除非硬件不支持或者 direct x 版本不支持。
//开启硬件加速:WPF的程序界面,在硬件层呈现。
//关闭硬件加速:WPF的程序界面,在软件中呈现。
System.Windows.Media.RenderOptions.ProcessRenderMode = System.Windows.Interop.RenderMode.SoftwareOnly;

根据业务要求,也可以将此更改作为配置项处理,如果出现花屏,可尝试关闭硬件加速。

相关推荐
晓纪同学1 天前
WPF-03 第一个WPF程序
大数据·hadoop·wpf
光电大美美-见合八方中国芯1 天前
用于无色波分复用光网络的 10.7 Gb/s 反射式电吸收调制器与半导体光放大器单片集成
网络·后端·ai·云计算·wpf·信息与通信·模块测试
晓纪同学1 天前
WPF-02体系结构
wpf
晓纪同学1 天前
WPF-01概述
wpf
海盗12341 天前
OxyPlot 在 WPF 中的使用
.net·wpf
晓纪同学1 天前
WPF-04 XAML概述
wpf
△曉風殘月〆2 天前
如何在WPF中捕获窗口外的事件
wpf
爱吃烤鸡翅的酸菜鱼3 天前
Java 事件发布-订阅机制全解析:从原生实现到主流中间件
java·中间件·wpf·事件·发布订阅
武藤一雄4 天前
WPF中ViewModel之间的5种通讯方式
开发语言·前端·microsoft·c#·wpf
CSharp精选营5 天前
都是微软亲儿子,WPF凭啥干不掉WinForm?这3个场景说明白了
c#·wpf·跨平台·winform