[源码下载]
稳扎稳打 Silverlight 2.0 系列
文章索引
作者:
webabcd
在线DEMO
http://www.cnblogs.com/webabcd/archive/2008/10/09/1307486.html
1、
稳扎稳打Silverlight(3) - 2.0控件之Border,ComboBox
介绍
Silverlight 2.0 控件一览:Border,Combo
Box
2、
稳扎稳打Silverlight(4) - 2.0控件之DataGrid,Image
介绍
Silverlight 2.0 控件一览:DataGrid,Image
3、
稳扎稳打Silverlight(5) - 2.0控件之ListBox,RadioButton
介绍
Silverlight 2.0 控件一览:List
Box,Ra
dioButton
4、
稳扎稳打Silverlight(6) - 2.0控件之ScrollViewer,ToggleButton
介绍
Silverlight 2.0 控件一览:ScrollViewer,ToggleButton
5、
稳扎稳打Silverlight(7) - 2.0图形之Ellipse,Rectangle
介绍
Silverlight 2.0 图形:
Ellipse - 椭圆
Line - 线
Path - 一系列相互连接的直线和曲线
Polygon - 多边形,闭合图形,起点与终点
自动相连
Polyline - 非闭合图形,一串连接起来的线,起点与终点不会
自动相连
Rectangle - 矩形
6、
稳扎稳打Silverlight(8) - 2.0图形之基类System.Windows.Shapes.Shape
介绍
Silverlight 2.0 图形:基类Sy
stem.Window
s.Shape
s.Shape(Ellipse,Rectangle都继承自抽象类Sy
stem.Window
s.Shape
s.Shape)。
Fill - 填充;
stroke - 笔画(边框)
strokeThick
ness - 笔画(边框)尺寸
Stretch - 拉伸值
strokeDashArray - 虚线和间隙的
值的集合
strokeDashCap - 虚线两端(线帽)的类型
strokeStartLineCap - 虚线起始端(线帽)的类型
strokeEndLineCap - 虚线终结端(线帽)的类型
strokeDashOffset - 虚线的
起始位置。从虚线的起始端的
strokeDashOffset 距离处开始描绘虚线
strokeLineJoin - 图形连接点处的连接类型
@L_378_17
@miterLimit - 斜接长度 与
strokeThick
ness/2 的比值。
默认值 10,最小值 1
7、
稳扎稳打Silverlight(9) - 2.0画笔之SolidColorBrush,RadialGradientBrush
介绍
Silverlight 2.0 画笔:
SolidColorBrush - 单色画笔
ImageBrush - 图像画笔
VideoBrush - 视频画笔
LinearGradientBrush - 线性渐变画笔
RadialGradientBrush - 放射性渐变画笔
8、
稳扎稳打Silverlight(10) - 2.0其它之Transform详解,以及UIElement和FrameworkElement的常用属性
介绍
Silverlight 2.0 其它:
RenderTransform - 呈现位置的转换(Sy
stem.Window
s.Media.Transform类型)
RenderTransformOrigin - 位置转换的中心点
Clip - 容器的剪辑区域(Sy
stem.Window
s.Media.Geometry类型)
IsHitTestVisible - 命中测试是否可见
Opacity - 不透明度。0 - 1之间
Opacit
ymask - 不透明
蒙版(遮罩)(Sy
stem.Window
s.Media
.brush类型)
UseLayoutRounding - 是否使用完整像素布局
cursor - 鼠标移动到 FrameworkElement 上面时,鼠标指针的样式
@H_452_18
@margin - 容器边缘与边缘之外的空白距离(像素值:上下左右;左右,上下;左,上,右,下)
Tag - 保存一些额外的信息(Sy
stem.ob
ject类型)
9、
稳扎稳打Silverlight(11) - 2.0动画之ColorAnimation,内插关键帧动画
介绍
Silverlight 2.0 动画:
ColorAnimation - 在两个 Color 值之间做线性内插动画处理
DoubleAnimation - 在两个 Double 值之间做线性内插动画处理
PointAnimation - 在两个 Point 值之间做线性内插动画处理
内插关键帧动画 - 在 Color 或 Double 或 Point 动画中内插关键帧,以做线性,离散,三次贝塞尔曲线的动画处理
动态改变动画 - 通过程序控制,动态地改变动画
10、
稳扎稳打Silverlight(12) - 2.0外观之样式,视觉状态和视觉状态管理器
介绍
Silverlight 2.0 外观控制:样式(Styl
E),模板(Templat
E),视觉状态(VisualStat
E)和视觉状态管理器(VisualStateManager)
11、
稳扎稳打Silverlight(13) - 2.0交互之鼠标事件和键盘事件
介绍
Silverlight 2.0 人机交互:响应
用户的鼠标操作和
键盘操作。
@H_452_18
@mouseEnter - 鼠标进入时触发的事件(显然,此事件不能冒泡)
@H_452_18
@mou
SELEave - 鼠标离开时触发的事件(显然,此事件不能冒泡)
@H_452_18
@mou
SELEftButtonDown - 鼠标左键单击按下时触发的事件
@H_452_18
@mou
SELEftButtonUp - 鼠标左键单击按下并放开时触发的事件
@H_452_18
@mouseMove - 鼠标移动时触发的事件
@H_452_18
@mouseEventArg
s.GetPosition() - 鼠标相对于指定元素的坐标
@H_452_18
@mouseButtonEventArg
s.Handled - 此事件是否已被处理
KeyDown - 鼠标按下时触发的事件
KeyUp - 鼠标按下并放开时触发的事件
KeyEventArg
s.Key - 与事件相关的
键盘的按键 [Input.Key枚举]
KeyEventArg
s.Handled - 是否处理过此事件
Keyboard.Modifiers - 当前按下的辅助键 [Input.ModifierKeys枚举]
12、
稳扎稳打Silverlight(14) - 2.0交互之InkPresenter(涂鸦板)
介绍
Silverlight 2.0 人机交互:InkPresenter(涂鸦板)。
InkPresenter - 涂鸦板,也就是在面板上呈现墨迹。InkPresenter 可以包含子控件
cursor - 鼠标移动到 InkPresenter 上面时,鼠标指针的样式
BACkground - 涂鸦板背景
Opacity - 面板上墨迹的不透明度
Clip - InkPresenter 的剪辑区域
stroke.DrawingAttributes -
stroke(笔划)的外观
属性
UIElement.CaptureMouse() - 为 UIElement 对象启用鼠标捕捉
UIElement.CaptureMouse() - 为 UIElement 对象释放鼠标捕捉
13、
稳扎稳打Silverlight(15) - 2.0数据之一次绑定,数据验证
介绍
Silverlight 2.0 数据绑定:
Binding - 将绑定目标对象的
属性与数据源联接起来
INotifyPropertyChanged - 向客户端发出某一
属性值已更改的
通知
IValueConverter - 值转换接口,将
一个类型的值转换为另
一个类型的值。它提供了一种将
自定义逻辑应用于绑定的方式
BindingValidationError - 出现验证
错误或
解决上次验证
错误则触发此事件
14、
稳扎稳打Silverlight(16) - 2.0数据之独立存储(Isolated Storage)
介绍
Silverlight 2.0 数据的独立存储(Isolated Storag
E):
IsolatedStorageFile - 操作 独立存储 的类;
IsolatedStorageFile.GetUserStoreForSite() - 按
站点获取用户的独立存储
IsolatedStorageFile.GetUserStoreForApplication() - 按应用程序
获取用户的独立存储
IsolatedStorageSet
Tings - 在独立存储中保存的 key-value 字典表
IsolatedStorageSet
Ting
s.SiteSet
Tings - 按
站点保存的 key-value 字典表
IsolatedStorageSet
Ting
s.ApplicationSet
Tings - 按应用程序保存的 key-value 字典表
15、
稳扎稳打Silverlight(17) - 2.0数据之详解DataGrid,详解ListBox
介绍
Silverlight 2.0 详解DataGrid,绑定数据到List
Box:
AutoGenerate
columns - 是否根据数据源
自动生成列
RowDetailsVisibilit
ymode -
显示相应的行的详细数据时所使用的
显示模式
DataGrid.RowDetail
stemplate - 用于
显示相应的行的详细数据的模板
AreRowDetailsFrozen - 是否冻结 RowDetail
stemplate
GridLi
nesVisibility - 表格
分隔线的
显示方式
Row
BACkground - 奇数数据行背景
Alterna
TingRow
BACkground - 偶数数据行背景
IsReadOnly - 单元格是否只读
Frozen
columnCount - 表格所冻结的列的总数(从左边开始数)
SELEctionMode - 行的选中模式
CanUserReorder
columns - 是否允许拖动列
CanUserResize
columns - 是否允许改变列的宽度
CanUserSort
columns - 是否允许列的排序
16、
稳扎稳打Silverlight(18) - 2.0视频之详解MediaElement,开发一个简易版的全功能播放器
介绍
Silverlight 2.0 详解MediaElement:开发
一个简易版的全
功能播放器。
source - 需要播放的媒体地址
Stretch - 拉伸值
AutoPlay - 是否
自动播放媒体
CurrentState - 播放状态
Position - 媒体的位置
DroppedFramesPerSecond - 媒体每秒正在丢弃的帧数
BufferingProgress - 缓冲进度
DownloadProgress - 下载进度
NaturalDuration - 媒体
文件的时长;
Volume - 音量大小
Balance - 音量平衡
BufferingTime - 需要缓冲的时
间的长度
CurrentState - 播放状态
IsMuted - 是否静音
Play() - 播放媒体
Pause() - 暂停媒体的播放
Stop() - 停止媒体的播放
17、
稳扎稳打Silverlight(19) - 2.0通信之调用REST服务,处理JSON格式,RSS/ATOM格式的数据
介绍
Silverlight 2.0
调用REST服务,处理JSON格式,
RSS/ATOM格式的数据。
通过 Sy
stem.Net.WebClient 类
调用 REST 服务
通过 Sy
stem.Json 命名控件下的类处理 JSON 数据
通过 Sy
stem.Xm
l.Linq 命名空间下的类(LINQ to XML)处理 XML 数据
通过 Sy
stem.
serviceMode
l.Syn
Dication 命名空间下的类处理
RSS/ATOM 数据
18、
稳扎稳打Silverlight(20) - 2.0通信之WebClient,以流的方式上传/下载数据
介绍
Silverlight 2.0 详解WebClient,以字符串的形式
上传、下载数据;以流的方式
上传、下载数据。
WebClient - 将数据发送到指定的 URI,或者从指定的 URI 接收数据的类
Download
StringAsync(Uri address,Ob
ject userToken) - 以字符串的形式下载指定的 URI 的资源
Upload
StringAsync(Uri address,
String data) - 以字符串的形式
上传数据到指定的 URI。所使用的
http 方法默认为 POST
OpenReadAsync(Uri address,Ob
ject userToken) - 以流的形式下载指定的 URI 的资源
OpenWriteAsync(Uri address,
String method,Ob
ject userToken) - 打开流以使用指定的
方法向指定的 URI 写入数据
19、
稳扎稳打Silverlight(21) - 2.0通信之WebRequest和WebResponse,对指定的URI发出请求以及接收响应
介绍
Silverlight 2.0 详解Web
request和WebResponse,对指定的URI做GET和POST请求,以及接收其响应。
httpWeb
request - 对指定的 URI 发出请求
Create() - 初始化
一个 Web
request
BeginGetResponse() - 开始对指定 URI 资源做异步请求
EndGetResponse() - 结束对指定 URI 资源做异步请求
httpWebResponse - 对指定的 URI 做出响应
GetResponseStream() -
获取响应的数据流
20、
稳扎稳打Silverlight(22) - 2.0通信之调用WCF服务,对传输信息做加密
介绍
Silverlight 2.0
调用 WCF 服务,对客户端与服务端传输的消息做加密。在 Visual
studio 2008 中使用"
添加服务引用"会
自动生成代理类。只
支持Basic
httpBinding
21、
稳扎稳打Silverlight(23) - 2.0通信之调用WCF的双向通信(Duplex Service)
介绍
Silverlight 2.0
调用 WCF 的双向通信服务(Duplex
servic
E) 。
开发
一个服务端主动向客服端发送股票信息的程序,首先客户端先向服务端发送需要监控的股票的股票
代码,然后服务端在该股信息发生变化的时候将信息推送到客户端
22、
稳扎稳打Silverlight(24) - 2.0通信之Socket,开发一个多人聊天室
介绍
Silverlight 2.0 Socket通信。开发
一个多人聊天室。
服务端:实例化Socket,绑定,监听,连接,接收数据,发送数据
客户端:实例化Socket,指定服务端地址,发送数据
23、
稳扎稳打Silverlight(25) - 2.0线程之Thread,ThreadPool
介绍
Silverlight 2.0 使用Thread,ThreadPool来实现多线程开发。
Thread - 用于线程的创建和控制的类
Timer - 用于以指定的时间间隔执行指定的
方法的类
BACkgroundWorker - 用于在单独的线程上运行操作
ThreadPool - 线程池的管理类
24、
稳扎稳打Silverlight(26) - 2.0线程之Lock,ThreadStaticAttribute
介绍
Silverlight 2.0 使用Lock,Monitor来实现线程同步。
Lock - 确保
代码块完成运行,而不会被其他线程中断
Interlocked - 为多个线程
共享的变量提供原子级的操作
EventWaitHandle -
通知其他线程是否可入的类
@H_452_18
@monitor - 提供同步访问对象的机制
ThreadStaticAttribute - 所指定的静态变量对每个线程都是唯一的
25、
稳扎稳打Silverlight(27) - 2.0网页之可脚本化,与JavaScript的交互
介绍
Silverlight 2.0 使用c#开发可脚本化的
代码,Silverlight与宿主
页面的DOM之
间的交互,Silverlight与宿主
页面的JavaScript之
间的交互。
ScriptableMemberAttribute - 需要脚本化的
属性、
方法、事件要
标记为此
HtmlPage.RegisterScriptab
Leob
ject - 将可脚本化对象
注册到客户端
HtmlElement - 表示网页的文档对象模型 (DOM) 中的 HTML 元素
HtmlWindow - 提供 JavaScript 的 window 对象的 Silverlight 端的托管表示形式
26、
稳扎稳打Silverlight(28) - 2.0通信之调用ADO.NET Data Services(数据服务)
介绍
Silverlight 2.0
调用 ADO.NET Data
services (数据服务)。本文以 Northwind
数据库为示例
数据库,做
一个添加、
查询、更新和
删除的Demo
在 Silverlight 2.0 中
调用数据服务只能使用异步方式
调用。另外,数据服务要与 Silverlight 宿主放在相同的域上
Sy
stem.Data.
service
s.CLIENt.Data
serviceCo
ntext - 数据服务上下文
Sy
stem.Data.
service
s.CLIENt.Data
serviceQuery - 以指定的 URI 语法
查询数据服务
AddOb
ject(),
updateOb
ject(),
deleteOb
ject() - 本别用于
添加,更新,
删除实体
BeginExecute()/EndExecute(),BeginExecuteBatch()/EndExecuteBatch - 用于执行某
一个 Data
serviceQuery
查询或批量执行(将一组
查询一次性地提交到数据服务)
BeginSaveChanges()/EndSaveChanges() - 用于提交对实体的
修改(增,删,改)
BeginLoad
property()/EndLoad
property() - 用于加载指定的
属性的值,加载导航
属性的时候
需要用到它
AddLink(),SetLink(),
deleteLink() - 分别为创建连接,Added状态(一对多);创建连接,Added状态(多对一);
删除连接,
deleted状态
27、
稳扎稳打Silverlight(29) - 2.0Tip/Trick之Cookie,程序常用配置参数
介绍
Silverlight 2.0
提示和技巧系列
- Cookie - 通过 JavaScript 操作 Cookie
- 自定义字体 - 在程序中使用自定字体
- 为程序传递参数 - 为 Silverlight 程序传递初始化参数
- 自定义鼠标右键 - 响应并处理自定的鼠标右键事件
- 程序常用配置参数 - object 标记的常用参数,以及对应的 Silverlight 控件的常用属性
28、
稳扎稳打Silverlight(30) - 2.0Tip/Trick之Silverlight.js,响应鼠标滚轮事件
介绍
Silverlight 2.0
提示和技巧系列
- Silverlight.js - 一些 js 帮助函数,用于嵌为入 Silverlight 插件以及自定义安装体验等提供帮助
- Silverlight.supportedUserAgent.js - 就一个函数,用于判断 Silverlight 是否支持用户的浏览器
- 自定义启动界面 - 三个参数的综合应用:splashScreensource,onsourceDownloadProgressChanged,onsourceDownloadComplete
- 响应鼠标滚轮事件 - 响应并处理鼠标的滚轮事件
29、
稳扎稳打Silverlight(31) - 2.0Tip/Trick之加载XAP,自定义鼠标指针
介绍
Silverlight 2.0
提示和技巧系列
- 加载XAP - 加载指定的 xap 文件到当前的 Silverlight 应用程序中
- 加载XAML - 加载指定的 xaml 文件到当前的 Silverlight 应用程序中
- 加载DLL - 加载指定的 dll 文件,并调用其中的方法或加载其中的控件
- AppManifest.xaml文件说明 - 简要说明 AppManifest.xaml 文件内容中各个节点的作用
- 自定义鼠标指针 - 实现自定义的鼠标指针,即鼠标跟随
30、
稳扎稳打Silverlight(32) - 2.0Tip/Trick之MessageBox,响应鼠标双击事件
介绍
Silverlight 2.0
提示和技巧系列
- messageBox - messageBox 的演示
- Popup - Popup 弹窗口的演示
- 循环的几种实现方法 - DispatcherTimer 方式,Storyboard 方式,Timer 方式, CompositionTarget.Rendering 方式
- 动态变换主题 - 演示如何动态地变换主题
- 本地化(多语言) - 演示如何实现对多语言的支持
- 响应鼠标双击事件 - 响应并处理鼠标的双击事件
OK
[源码下载]