【文件属性】:
文件名称:第03个小程序:渐变画笔
文件大小:153KB
文件格式:DOCX
更新时间:2012-04-27 08:57:34
渐变
第03个小程序:渐变画笔(GradiateTheBrush.cs)
渐变画刷的实现
using System;
using System.Windows;
using System.Windows.Input;
using System.Windows.Media;
namespace Chapter02
{
public class GradiateTheBrush : Window
{
[STAThread]
public static void Main()
{
Application app = new Application();
app.Run(new GradiateTheBrush());
}
public GradiateTheBrush()
{
Title = "Gradiate the Brush";
//渐变画刷。左上角(0,0)红色,右下角(1,1)蓝色,中间渐变色。
LinearGradientBrush brush =
new LinearGradientBrush(Colors.Red, Colors.Blue,
new Point(0, 0),new Point(1, 1));
Background = brush;
}
}
}
这里的表面被视为一个单位宽,一个单位高。表面的左上角是(0,0),右下角是(1,1)。
brush有个SpreadMethod属性,其默认值是GradientSpreadMethod.Pad,表示超出设定区域部分延续之前的颜色;另一个值GradientSpreadMethod.Reflect,表示按相向方向重复渐变;还有一个值GradientSpreadMethod.Repeat,表示按原始方向重复渐变。
修改LinearGradientBrush brush =……代码如下:
LinearGradientBrush brush =
new LinearGradientBrush(Colors.Red, Colors.Blue,
new Point(0, 0),new Point(0.25, 0.25));
brush.SpreadMethod = GradientSpreadMethod.Pad;
//brush.SpreadMethod = GradientSpreadMethod.Reflect;
//brush.SpreadMethod = GradientSpreadMethod.Repeat;
当SpreadMethod属性取不同值时,效果分别如下