LinearGradientBrush:在一个区域内进行渐变填充。
属性StartPoint定义了启示位置,一般是(0,0) 属性EndPoint定义了结束为宗旨,一般是(1,1).类型为point。所得渐变的颜色是沿着对角方向路径插入的。
GradientStop指各渐变颜色的结束位置。
样例(应用MSDN):
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![ExpandedBlockStart.gif](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
<
Rectangle Width
=
"
200
"
Height
=
"
100
"
>
< Rectangle.Fill >
< LinearGradientBrush StartPoint = " 0,0 " EndPoint = " 1,1 " >
< GradientStop Color = " Yellow " Offset = " 0.0 " />
< GradientStop Color = " Red " Offset = " 0.25 " />
< GradientStop Color = " Blue " Offset = " 0.75 " />
< GradientStop Color = " LimeGreen " Offset = " 1.0 " />
</ LinearGradientBrush >
</ Rectangle.Fill >
</ Rectangle >
< Rectangle.Fill >
< LinearGradientBrush StartPoint = " 0,0 " EndPoint = " 1,1 " >
< GradientStop Color = " Yellow " Offset = " 0.0 " />
< GradientStop Color = " Red " Offset = " 0.25 " />
< GradientStop Color = " Blue " Offset = " 0.75 " />
< GradientStop Color = " LimeGreen " Offset = " 1.0 " />
</ LinearGradientBrush >
</ Rectangle.Fill >
</ Rectangle >
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![ExpandedBlockStart.gif](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
Rectangle diagonalFillRectangle
=
new
Rectangle();
diagonalFillRectangle.Width = 200 ;
diagonalFillRectangle.Height = 100 ;
// Create a diagonal linear gradient with four stops.
LinearGradientBrush myLinearGradientBrush =
new LinearGradientBrush();
myLinearGradientBrush.StartPoint = new Point( 0 , 0 );
myLinearGradientBrush.EndPoint = new Point( 1 , 1 );
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Yellow, 0.0 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Red, 0.25 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Blue, 0.75 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.LimeGreen, 1.0 ));
// Use the brush to paint the rectangle.
diagonalFillRectangle.Fill = myLinearGradientBrush;
diagonalFillRectangle.Width = 200 ;
diagonalFillRectangle.Height = 100 ;
// Create a diagonal linear gradient with four stops.
LinearGradientBrush myLinearGradientBrush =
new LinearGradientBrush();
myLinearGradientBrush.StartPoint = new Point( 0 , 0 );
myLinearGradientBrush.EndPoint = new Point( 1 , 1 );
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Yellow, 0.0 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Red, 0.25 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.Blue, 0.75 ));
myLinearGradientBrush.GradientStops.Add(
new GradientStop(Colors.LimeGreen, 1.0 ));
// Use the brush to paint the rectangle.
diagonalFillRectangle.Fill = myLinearGradientBrush;