Как в WPF создать фон как HatchBrushe как в System.Drawing.Drawing2D? Чтоб можно было задавать динамически цвет линий и фона.
После долгих поисков нашел пример для DiagonalCross, но как создать другие кисти не имею представления.
<Window.Resources>
<VisualBrush x:Key="MyVisualBrush" TileMode="Tile" Viewport="0,0,15,15" ViewportUnits="Absolute" Viewbox="0,0,15,15" ViewboxUnits="Absolute">
<VisualBrush.Visual>
<Grid Background="Black">
<Path Data="M 0 15 L 15 0" Stroke="Gray" />
<Path Data="M 0 0 L 15 15" Stroke="Gray" />
</Grid>
</VisualBrush.Visual>
</VisualBrush>
</Window.Resources>
<Grid Background="{StaticResource MyVisualBrush}">
<Label Content="TEST" Foreground="White" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
1 ответ 1
Если под
как создать другие кисти
вы имеете в виду построение Path из картинки, то вам сюда: Convert an image to XAML или по хардкору Path Markup Syntax
ответ дан 27 окт. 2025 в 15:19
AlexanderSt
4781 золотой знак2 серебряных знака9 бронзовых знаков
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопросlang-cs
HatchBrush, используйтеDrawingBrushM 0 15 L 15 0читается какMove x=0, y=15; Line to x=15, y=0. При этом Viewport показывает размер квадратика, в котором идёт рисование. Вообще формат SVG точно также работает, то есть можно взять любой редактор векторной графики, там нарисовать узор, сохранить как SVG (это по сути текстовый файл), и вы найдёте там<path d=...>гдеdэто и естьData. Но можете и кодом попробовать, если есть воображение w3.org/TR/SVG/paths.html#PathElement