多色的几何控制背景

时间:2015-03-25 10:41:53

标签: c# wpf styles visualbrush drawingbrush

enter image description here

我试图制作某种能够达到图片所示效果的画笔。它适用于控件的背景。

我可以使用VisualBrush以上面的图像作为源来实现效果,但我将它应用于~100个控件,并且我对线性和实体画笔没有经历过一些延迟。

我尝试使用GeometryDrawing(在DrawingBrush和VisualBrush中)但它似乎不允许多种颜色。 LinearGradientBrush似乎并不适合这个目的,因为我无法改变方向'或层渐变。

有没有办法实现这种效果?我是否必须使用滞后图片? ; - ;

1 个答案:

答案 0 :(得分:2)

这应该做的工作:

<DrawingBrush Stretch="Uniform">
    <DrawingBrush.Drawing>
        <DrawingGroup>
            <GeometryDrawing Geometry="M0,0 L8,0 8,8 0,8Z" Brush="Black"/>
            <GeometryDrawing Geometry="M0,0 L2,0 0,2Z" Brush="LightBlue"/>
            <GeometryDrawing Geometry="M6,8 L7,7 8,8Z" Brush="Red"/>
            <GeometryDrawing Geometry="M8,6 L7,7 8,8Z" Brush="DarkGreen"/>
        </DrawingGroup>
    </DrawingBrush.Drawing>
</DrawingBrush>