xp 虚拟机运行WPF程序的时候,有部分控件透明,在这儿有一个可能的解决方案:关闭系统的硬件加速(如何关闭请自行百度)。


以前还不太明白WPF硬件加速的原理,经过这个过程,感觉稍微了解了一下。大家可以对照理解一下.

WPF从以下三个层次上来利用WPF硬件加速的特性:

WPF API首先检测你的硬件系统所支持的WPF硬件加速的等级,比如显卡的显存大小,像素深度等等。基于你所使用的硬件,WPF将从以下三种渲染模式中的选择一种作为其渲染模式:

第0级
如果你的显卡不支持硬件加速,WPF将采用第0级渲染模式。也就是说它将使用软件加速。这相当于使用低于7.0版本的DirectX。

第1级
如果你的显卡部分地支持硬件加速,那么WPF将采用第1级渲染模式。这相当于使用版本号在7.0到9.0之间的DirectX。

第2级
如果你的显卡完全支持硬件加速,那么WPF将采用第2级渲染模式。这相当于使用版本号等于或者大于9.0的DirectX。



在这儿我们关闭了硬件加速,控件的绘制只能使用软件加速,而软件加速使用的是cpu,所以只是增大了资源占用,但是不影响显示。



Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐