三 使用径向渐变绘制 RadialGradientBrush使用径向渐变绘制区域。 径向渐变跨一个圆混合两种或多种颜色。 与类一样 LinearGradientBrush ,可以使用 GradientStop 对象指定渐变中的颜色及其位 置。 下面的示例使用 RadialGradientBrush 绘制 Fill 的 Rectangle 。 使用 RadialGradientBrush 绘制的矩形 C#:
Rectangle exampleRectangle = new Rectangle();
exampleRectangle.Width = 75;
exampleRectangle.Height = 75;
RadialGradientBrush myBrush = new RadialGradientBrush();
myBrush.GradientOrigin = new Point(0.75, 0.25);
myBrush.GradientStops.Add(new GradientStop(Colors.Yellow, 0.0));
myBrush.GradientStops.Add(new GradientStop(Colors.Orange, 0.5));
myBrush.GradientStops.Add(new GradientStop(Colors.Red, 1.0));
exampleRectangle.Fill = myBrush;
GD_Main.Children.Add(exampleRectangle);
XAML:
<Rectangle Width="75" Height="75">
<Rectangle.Fill>
<RadialGradientBrush GradientOrigin="0.75,0.25">
<GradientStop Color="Yellow" Offset="0.0" />
<GradientStop Color="Orange" Offset="0.5" />
<GradientStop Color="Red" Offset="1.0" />
</RadialGradientBrush>
</Rectangle.Fill>
</Rectangle>
效果图: 四 使用图像进行绘制 ImageBrush使用绘制区域 ImageSource 。 下面的示例使用 ImageBrush 绘制 Fill 的 Rectangle 。 使用图像绘制的矩形 C#:
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace WpfApplication {
public partial class Window1 : Window{
public Window1(){
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e){
Rectangle exampleRectangle = new Rectangle();
exampleRectangle.Width = 75;
exampleRectangle.Height = 75;
ImageBrush myBrush = new ImageBrush();
myBrush.ImageSource = new BitmapImage(new
Uri(@"Images\6.jpg", UriKind.Relative));
exampleRectangle.Fill = myBrush;
GD_Main.Children.Add(exampleRectangle);
}
}
}
XAML:
<Rectangle Width="75" Height="75">
<Rectangle.Fill>
<ImageBrush ImageSource="Images\6.jpg" />
</Rectangle.Fill>
</Rectangle>
|