Wpf性能问题:画笔上的不透明度与元素上的不透明度

时间:2011-06-29 08:59:21

标签: c# wpf performance xaml

我想知道为什么设置元素的Brush.Opacity值而不是设置元素的Opacity属性对于性能更好。

来自MSDN:Modifying an element's Opacity property can cause WPF to create a temporary surface.

但我无法理解什么是临时表面
可以解释一下吗? 感谢。

1 个答案:

答案 0 :(得分:10)

如果创建了一个临时曲面,则表示为该元素创建了一个新的位图,该元素的内容将呈现给它,然后然后使用提供的不透明度将其合成到父元素的曲面上

否则,如果您只是设置画笔的不透明度,它可以绕过此步骤并直接绘制到父元素的表面。

创建新位图并合成它比直接绘图更昂贵。