Sliverlight之 画刷

1,5种画刷 (见Project15)

(1)TextBlock控件中的Forground和BackGround属性是一个什么对象?它在前台的完整的写法是什么?
(实际是.net做了一个转换,可以直接写成ForeGround="Red")


说明:它们实际上是一个Brush类型

<TextBlock Name="tb1" Text="ddd">

<TextBlock.Foreground>

<SolidColorBrush Color="Red"></SolidColorBrush>

</TextBlock.Foreground>

</TextBlock>

 

注意:在Sliverlight中,几乎所有和颜色有关的属性都是Brush类型

 

(2)Brush类是一个什么类

说明:Brush是一个绘制图形的类


(3)什么是实心颜色画刷(单色笔刷)

说明: 它的标签是SolidColorBrush,重要的属性是Color填充颜色

<Rectangle.Fill>

<SolidColorBrush Color="Green"></SolidColorBrush>

</Rectangle.Fill>

 

(4)点击按钮,改变TextBlock控件文字颜色为绿色

说明:

SolidColorBrush solid = new SolidColorBrush();

solid.Color = Colors.Green;

tb1.Foreground = solid;

 


(5)什么是线型渐变画刷

说明:
线型渐变标签是LinearGradient
几个重要属性:StartPoint EndPoint
它的渐变点是GradientStop


(6)线型渐变画刷的渐变点是什么,它的offset属性有什么含义

说明:
渐变点:GradientStop
Offset值的范围是0---1,表示渐变点所属区域的位置

 

(7)线型渐变画刷的起始位置是哪两个属性,它和x轴和y轴是什么关系,不同数值代表什么含义

说明:
起始位置是 StartPoint(x,y) EndPoint(x,y)
表示渐变的方向


(8)在Rectangle控件中用线型渐变画刷对3种颜色分别从横向和纵向画出一个渐变

说明:

横向线型渐变

<Rectangle.Fill>

<LinearGradientBrush StartPoint="0,0" EndPoint="1,0">

<GradientStop Color="Red" Offset="0"></GradientStop>

<GradientStop Color="Yellow" Offset="0.5"></GradientStop>

<GradientStop Color="Green" Offset="1"></GradientStop>

</LinearGradientBrush>

</Rectangle.Fill>

 

纵向线型渐变
StartPoint="0,0" EndPoint="0,1"


(9)把TextBlock控件中文字作出一个线型渐变的效果

说明:

<TextBlock.Foreground>

<LinearGradientBrush StartPoint="0,0" EndPoint="1,0">

<GradientStop Color="Black" Offset="0"></GradientStop>

<GradientStop Color="Blue" Offset="0.25"></GradientStop>

<GradientStop Color="Yellow" Offset="0.75"></GradientStop>

</LinearGradientBrush>

</TextBlock.Foreground>

  


(10)作一个文字闪烁的效果(线性渐变,定时器,TextBlock)

说明:

DispatcherTimer dt = new DispatcherTimer();

dt.Interval = TimeSpan.FromMilliseconds(300);

dt.Tick += dt_Tick;

dt.Start();



double number = 0.1;

void dt_Tick(object sender,EventArgs e)

{

tb1.Text = gs1.Offset.ToString();

if (gs1.Offset >= 1 || gs1.Offset<=0)

{

number = - number;

}



gs1.Offset += number;



if (gs1.Offset > 1)

{

gs1.Offset = 1;

}

if (gs1.Offset < 0)

{

gs1.Offset = 0;

}



}

 

注意:
使用DispatcherTimer,要引用using System.Windows.Threading;

 

(11)什么是径向渐变,径向渐变的中心点如何设置?

说明:

径向渐变的标签是RadialGradientBrush

它的属性有:

GradientOrigin是焦点,它是定义渐变的开始
GradientOrigin设置中心点,默认是GradientOrigin="0.5,0.5",即处于中心点位置

Center="x,y"获取或设置外面圆的圆心,默认值是Center="0.5,0.5"

RadiusX 获取或设置外面圆的水平半径,默认值是RadiusX="0.5"
RadiusY 获取或设置最面圆的垂直半径,默认值是RadiusY="0.5"

 

(12)在Rectangle控件中实现一个径向渐变的时空门效果

说明:

<Rectangle.Fill>

<RadialGradientBrush GradientOrigin="0.5,0.5" Center="0.5,0.5" RadiusX="0.5" RadiusY="0.5">

<GradientStop Color="Red" Offset="0"></GradientStop>

<GradientStop Color="Blue" Offset="0.5"></GradientStop>

<GradientStop Color="Green" Offset="1"></GradientStop>

</RadialGradientBrush>

</Rectangle.Fill>

 


(13)什么是图片画刷,在TextBlock中文字和背景色上演示一下

说明:
图片画刷的标签是ImageBrush,表示用图片绘制
重要的属性是ImageSource

<TextBlock.Foreground>

<ImageBrush ImageSource="1.jpg"></ImageBrush>

</TextBlock.Foreground>

 

 


(14)什么是视频画刷,在TextBlock中文字和背景色上演示一下

说明:

视频画刷的标签是VideoBrush,它的重要的属性是SourceName
需要放一个MediaElement

<TextBlock FontSize="50" HorizontalAlignment="Left" Margin="88,100,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top">

<TextBlock.Foreground>

<VideoBrush SourceName="video1"></VideoBrush>

</TextBlock.Foreground>

</TextBlock>

<MediaElement Name="video1" Visibility="Collapsed" Source="1.wmv" HorizontalAlignment="Left" Height="100" Margin="71,100,0,0" VerticalAlignment="Top" Width="100"/>



 

 

 

(15)回顾一下,这五种画刷

说明:
SolidColorBrush 纯色画刷
LinearGradientBrush 线型渐变画刷
RadialGradientBrush 径向渐变画刷
ImageBrush 图片画刷
VideoBrush 视频画刷

你可能感兴趣的:(live)