在 Photoshop 中編輯圖片時,圖片的透明部份會顯示為灰白相間的棋盤格(馬賽克)圖案。這種棋盤格圖案並不是圖片的內容,而是 Photoshop 用來表示透明區域的一種顯示方式。透過棋盤格,可以幫助使用者區分影像的透明區域和非透明區域。
如果想在 Avalonia UI 中將棋盤格作為控制項背景,除了使用預先準備好的位圖,也可以使用 DrawingBrush 實作(以下程式碼需要放在 Resurces 標簽中)。
<DrawingBrushTileMode="Tile"Stretch="None"DestinationRect="0 0 10 10"x:Key="CheckerboardBrush">
<DrawingBrush.Drawing>
<DrawingGroup>
<GeometryDrawingBrush="LightGray">
<GeometryDrawing.Geometry>
<RectangleGeometryRect="0,0,10,10" />
</GeometryDrawing.Geometry>
</GeometryDrawing>
<GeometryDrawingBrush="LightGray">
<GeometryDrawing.Geometry>
<RectangleGeometryRect="10,10,10,10" />
</GeometryDrawing.Geometry>
</GeometryDrawing>
<GeometryDrawingBrush="DarkGray">
<GeometryDrawing.Geometry>
<RectangleGeometryRect="10,0,10,10" />
</GeometryDrawing.Geometry>
</GeometryDrawing>
<GeometryDrawingBrush="DarkGray">
<GeometryDrawing.Geometry>
<RectangleGeometryRect="0,10,10,10" />
</GeometryDrawing.Geometry>
</GeometryDrawing>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
使用方式如下:
<BorderBackground="{StaticResource CheckerboardBrush}">
<!-- 其他控制項 -->
</Border>
展示效果如圖所示: