當前位置: 妍妍網 > 碼農

Avalonia UI 將控制項背景設定為灰白相間棋盤格(馬賽克)圖案

2024-07-11碼農

在 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>

展示效果如圖所示: