Rom*_*kov 9 wpf effect drawingcontext
我正在绘制一个DrawingContext,我想对绘图的一部分应用阴影效果.目前我在a中创建相关部分DrawingGroup并应用a BitmapEffect,但这没有效果:
var layer = new DrawingGroup();
using (var lcontext = layer.Open())
{
// draw stuff in lcontext
}
layer.BitmapEffect = new DropShadowBitmapEffect { Color = Colors.Black, ShadowDepth = 3, Opacity = 0.5 };
context.DrawDrawing(layer);
Run Code Online (Sandbox Code Playgroud)
这将layer正确地绘制所有内容,但没有投影效果.
我做错了什么/如何在DrawingContext中对一堆基元应用投影?
BitmapEffect是 .NET 3.5 之前的旧属性(他们使用 CPU 渲染效果)。该属性在 4.0 中无效。
在 4.0 中,您应该使用Effect属性,它使用像素着色器。
DrawingGroup但是似乎没有效果属性 - 听起来您可能需要在父 UI 元素上设置效果。