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=""></GradientStop>
<GradientStop Color="Yellow" Offset="0.5"></GradientStop>
<GradientStop Color="Green" Offset=""></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=""></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();
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 >= || gs1.Offset<=)
{
number = - number;
} gs1.Offset += number; if (gs1.Offset > )
{
gs1.Offset = ;
}
if (gs1.Offset < )
{
gs1.Offset = ;
} }

注意:
使用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=""></GradientStop>
<GradientStop Color="Blue" Offset="0.5"></GradientStop>
<GradientStop Color="Green" Offset=""></GradientStop>
</RadialGradientBrush>
</Rectangle.Fill>

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

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

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

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

说明:

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

<TextBlock FontSize="" 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="" Margin="71,100,0,0" VerticalAlignment="Top" Width=""/>

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

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

Sliverlight之 画刷的更多相关文章

  1. WPF样式之画刷结合样式

    第一种画刷,渐变画刷GradientBrush (拿线性渐变画刷LinearGradientBrush(其实它涵盖在GradientBrush画刷内.现在拿他来说事.),还有一个圆心渐变画刷Radia ...

  2. C#GDI+基础(三)画刷详解

    SolidBrush:一般的画刷,通常只用一种颜色去填充GDI+图形 创建一般画刷: SolidBrush sbBrush1 = new SolidBrush(Color.Green); HatchB ...

  3. [游戏模版3] Win32 画笔 画刷 图形

    >_<:introduce the functions of define\create\use pen and brush to draw all kinds of line and s ...

  4. Unity3D-terrain brush地形画刷无法出现在Scene中,无法刷地图2

    原因大概是 画刷brush 太小了,地图也太小了,没出出现. 如图,非正常状态: 解决方法: tag: terrain brush not working unity

  5. WPF 动画(形状、画刷)

    一:形状 在WPF用户界面中,可以通过形状(Shape)来绘制直线.椭圆.矩形及一些多边形的类.通过这些基本的图像,组合成为复杂的图形. Shape类中,主要的形状有Rectangle(),Ellip ...

  6. WPF学习系列之八(形状,画刷和变换)

    形状,画刷和变换   概述: 在许多用户界面技术中,普通控件和自定义绘图之间具有清晰的区别.通常来说,绘图特性只用于特定的应用程序--如游戏,数据可视化和物理仿真等.而WPF具有一个非常不同的原则.它 ...

  7. WPF中线性渐变画刷的一个小窍门

    最近被项目里面控件的设计搞的死去活来的,大部分的设计都会需要使用进度条的功能,因为UI形状的变态,使用ProgressBar不能满足需求,没办法就自己想办法实现进度显示.折腾的多了发现一个很不错的方法 ...

  8. 《WPF程序设计指南》读书笔记——第2章 基本画刷

    1.Color结构 using System; using System.Windows; using System.Windows.Input; using System.Windows.Media ...

  9. qt画刷和画笔

    # -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #画刷和画笔:QBrush 定义了 QPainter 的填充模式,具 ...

随机推荐

  1. Java线程的生命周期(转)

    Java线程的生命周期 一个线程的产生是从我们调用了start方法开始进入Runnable状态,即可以被调度运行状态,并没有真正开始运行,调度器可以将CPU分配给它,使线程进入Running状态,真正 ...

  2. 14.3.4 Phantom Rows 幻影行

    14.3.4 Phantom Rows 幻影行 所谓的幻读为发生在一个事务 当相同的查询产生不同的结果集在不同的时间. 比如,如果一个SELECT被执行2次, 但是第2次返回的记录不是第一次返回的记录 ...

  3. SilkTest高级进阶系列8 – 放下榔头,立地成佛

    在地球尚未毁灭的某天,手动测试的同事找到你所在的自动组,问是否可以帮助他们自动化一个需要连续添加100个条目的测试用例,因为他们觉得这是一个噩梦.你口头上说要先烟酒烟酒才能知道,但是内里早就满心欢喜: ...

  4. Android中关于JNI 的学习(六)JNI中注冊方法的实现

    在前面的样例中,我们会发现,当在Java类中定义一个方法的时候,例如以下: public class ParamTransferTest { public static int testval = 1 ...

  5. python 学习笔记 10 -- 正則表達式

    零.引言 在<Dive into Python>(深入python)中,第七章介绍正則表達式,开篇非常好的引出了正則表達式,以下借用一下:我们都知道python中字符串也有比較简单的方法, ...

  6. SSH WebShell: SSH在线WEB管理器安装教程 - VPS管理百科

    SSH WebShell: SSH在线WEB管理器安装教程 - VPS管理百科 SSH WebShell: SSH在线WEB管理器安装教程 本站原创 [基于 署名-非商业使用-相同方式分享 2.5 协 ...

  7. 读懂Java中的Socket编程(转)

    Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一.如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的.本文会介绍一下基于TCP/IP的S ...

  8. Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签

    Cocos2d-x在新版本号中增加了新的Label API.和以往不同的是,2.x的版本号是通过三个不同的类来创建不同的文本标签,而如今是模仿着精灵的创建方式.一个类创建不同形式的文本,只是核心内容还 ...

  9. EBS并发管理器请求汇总(按照并发消耗时间,等待时间,平均等待事件等汇总)

    此数据集用于确定正在使用中并发管理器,并可与实际的在启动时分配的并发管理器.而且考虑完成状态为 正常/警告 的请求. select q.concurrent_queue_name, count(*) ...

  10. 自定义Annotation

    来源:http://blog.csdn.net/lifetragedy/article/details/7394910 概念篇 来看一个最简单的annotation示例 @Target(Element ...