Наложение двух кистей в Fill-Property

Я хочу, чтобы прямоугольник был заполнен шахматной доской, которая наложена на LinearGradientBrush. Только GradientBrush или только Checkerboard-DrawingBrush не являются проблемой. Но как наложить оба в Fill-Property? Я не могу поместить Градиент в DrawingGroup, потому что Градиент тоже будет мозаичным.

Это Checkerboard-DrawingBrush:

<Rectangle.Fill>
    <DrawingBrush Viewport="0,0,0.5,0.05" TileMode="Tile">
        <DrawingBrush.Drawing>
            <DrawingGroup>
                <GeometryDrawing Brush="White">
                    <GeometryDrawing.Geometry>
                        <RectangleGeometry Rect="0,0,100,100"  />
                    </GeometryDrawing.Geometry>
                </GeometryDrawing>
                <GeometryDrawing >
                    <GeometryDrawing.Geometry>
                        <GeometryGroup>
                            <RectangleGeometry Rect="0,0,50,50" />
                            <RectangleGeometry Rect="50,50,50,50" />
                        </GeometryGroup>
                    </GeometryDrawing.Geometry>
                    <GeometryDrawing.Brush >
                        <LinearGradientBrush>
                            <GradientStop Offset="0.0" Color="Black" />
                            <GradientStop Offset="1.0" Color="Gray" />
                        </LinearGradientBrush>
                    </GeometryDrawing.Brush>
                </GeometryDrawing>
            </DrawingGroup>
        </DrawingBrush.Drawing>
    </DrawingBrush>
</Rectangle.Fill>

Итак, как применить мой градиент по всему прямоугольнику?

<LinearGradientBrush>
     <GradientStop Color="White" Offset="0" />
     <GradientStop Color="Transparent" Offset="1" />
</LinearGradientBrush>

1 ответ

Решение

Я бы сделал это:

<Grid>
    <Rectangle … checkerboard
    <Rectangle … gradient
</Grid>
Другие вопросы по тегам