WPF有5种画刷和1种自定义画刷,都是继承自基类Brush。基类如下
透明度 绝对转换 相对转换
以下主要讨论TileBrush
1. Image画刷
<Grid.Background>
<ImageBrush x:Name="landBrush" ImageSource="C:\Users\Administrator\Desktop\大兵.gif"/>
</Grid.Background>
2.ViusalBrush(控件画刷)
重点将这个画刷
<VisualBrush x:Key="test" TileMode="Tile" Opacity="0.8">
<VisualBrush.Visual>
<StackPanel>
<TextBlock Foreground="Gold">
唧唧复唧唧
</TextBlock>
<TextBlock Foreground="LightBlue">
木兰开飞机
</TextBlock>
<TextBlock Foreground="LightGray">
开的什么机
</TextBlock>
<TextBlock Foreground="Pink">
波音747
</TextBlock>
</StackPanel>
</VisualBrush.Visual>
</VisualBrush>
<Button Content="我是超大按钮" Background="{StaticResource ResourceKey=test}"/>
3.Drwaing画刷(自定义画刷)最灵活,最复杂的
<DrawingBrush x:Key="test">
<DrawingBrush.Drawing>
<DrawingGroup>
<DrawingGroup.Children>
<GeometryDrawing>
<!-- 绘制矩形 -->
<GeometryDrawing.Geometry>
<RectangleGeometry RadiusX="0.2" RadiusY="0.5"
Rect="0.02,0.02,0.96,0.96" />
</GeometryDrawing.Geometry>
<!-- 矩形填充色 -->
<GeometryDrawing.Brush>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Green" Offset="0" />
<GradientStop Color="Red" Offset="1" />
</LinearGradientBrush>
</GeometryDrawing.Brush>
<!-- 矩形边框 -->
<GeometryDrawing.Pen>
<Pen Thickness="0.02">
<Pen.Brush>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="AliceBlue" Offset="0" />
<GradientStop Color="Black" Offset="1" />
</LinearGradientBrush>
</Pen.Brush>
</Pen>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingGroup.Children>
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
<Button Background="{StaticResource ResourceKey=test}"/>