silverlight是開發的目前極為熱門的一種ria開發技術,本書以silverlight的最新版本silverlight1.1為例,詳細介紹了這門新技術的功能、特性。全書共分為4篇25章,分別介紹了silverlight的開發環境、silverlight的設計元素、silverlight開發的相關技術及方法等內容,最後通過7個極具代表性的示例深入分析了silverlight的設計方式及編程方法。
基本介紹
- 書名:精通silverlight——ria開發技術詳解
- 作者:丁士鋒
- ISBN:17700
- 出版社:微軟公司
圖書簡介,圖書目錄,
圖書簡介
本書適合想學習silverlight的初學者閱讀,也適合具有一定silverlight經驗,想深入、全面學習silverlight的讀者參考。
圖書目錄
目錄:
第1篇silverlight入門與開發環境
第1章silverlight基礎3
1.1silverlight概述3
1.1.1silverlight是什麼3
1.1.2silverlight能做什麼4
1.1.3跨平台的用戶體驗5
1.1.4可擴展的編程模型和協作工具5
1.1.5高質量、低成本的多媒體技術6
1.1.6結合數據、伺服器和服務6
1.2silverlight實例概覽6
1.2.1多媒體播放器6
1.2.2演示網站8
1.3下載和安裝silverlight8
1.3.1silverlight版本介紹8
1.3.2silverlight1.0簡介8
1.3.3silverlight1.1的新特性9
1.3.4客戶端silverlight運行時9
1.3.5silverlight開發工具和sdk10
1.4第一個silverlight應用程式11
1.4.1創建silverlight項目11
1.4.2編寫xaml代碼12
1.4.3使用blend2設計動畫13
1.4.4編寫後台代碼控制動畫14
1.5silverlight項目檔案結構14
1.5.1web頁面15
1.5.2xaml與代碼後置檔案16
1.5.3createsilverlight.js創建silverlight外掛程式16
1.5.4silverlight.js輔助檔案17
1.5.5項目檔案的關係17
1.6小結18
第2章silverlight技術概述19
2.1點陣圖和矢量圖19
2.1.1點陣圖19
2.1.2矢量圖20
2.2什麼是wpf20
2.3linq簡介21
2.3.1什麼是語言集成查詢(linq)21
2.3.2linq示例22
2.3.3簡單查詢23
2.3.4條件查詢24
2.3.5聯合查詢25
2.3.6聚合查詢26
2.4silverlight架構總覽26
2.4.1silverlight平台27
2.4.2核心呈現框架27
2.4.3silverlight的.net框架特性28
2.4.4附加的silverlight編程特性28
2.5小結28
第3章silverlight工具集合29
3.1visualstudio2008集成化開發環境29
3.1.1開發多個.net框架版本應用程式30
3.1.2javascript的智慧型提示和調試功能30
3.1.3增強的web設計時支持31
3.1.4對.netframework新項目的支持32
3.2microsoftexpression設計工具簡介33
3.2.1microsoftexpressionblend2互動式設計工具33
3.2.2microsoftexpressiondesign圖形設計工具34
3.3小結35
第2篇silverlight設計元素
第4章xaml基礎39
4.1xaml基本語法39
4.1.1什麼是xaml40
4.1.2定義xaml對象41
4.1.3xaml屬性41
4.1.4特性(attribute)語法42
4.1.5使用屬性(property)元素語法42
4.1.6使用內容元素語法定義屬性43
4.1.7使用隱式集合語法設定屬性43
4.1.8使用附加屬性44
4.1.9xaml與代碼後置檔案44
4.2編寫xaml46
4.2.1使用visualstudio2008開發xaml46
4.2.2使用microsoftexpressblend可視化編寫xaml46
4.3小結47
第5章silverlight對象模型48
5.1silverlight模型分類48
5.1.1文檔對象模型48
5.1.2silverlight對象模型51
5.1.3對象模型的混合51
5.2silverlight對象定位51
5.2.1畫布對象51
5.2.2定位路徑、幾何圖形和其他形狀53
5.2.3變換53
5.2.4z軸順序55
5.3小結56
第6章silverlight圖形元素57
6.1canvas對象57
6.1.1canvas對象設定57
6.1.2x:name屬性58
6.1.3xmlns和xmlns:x屬性59
6.1.4loaded屬性60
6.1.5x:class屬性60
6.1.6width和hight屬性60
6.1.7background屬性60
6.1.8canvas.left,canvas.top,canvas.zindex屬性61
6.1.9opacity屬性61
6.1.10向canvas中添加圖形元素61
6.1.11嵌套canvas62
6.1.12拖動畫布示例63
6.2文本和字型68
6.2.1textblock元素68
6.2.2文本字型設定68
6.2.3格式化文本69
6.2.4文本前景填充69
6.2.5文本換行70
6.2.6文本修飾71
6.2.7文字變換效果72
6.2.8使用旋轉變換73
6.2.9使用縮放變換73
6.2.10使用傾斜變換74
6.2.11使用移動變換75
6.2.12中文文本的顯示76
6.3brushes畫刷77
6.3.1solidcolorbrush單色畫刷77
6.3.2lineargradientbrush線性漸變畫刷78
6.3.3radialgradientbruash放射漸變畫刷79
6.3.4imagebrush圖像畫刷83
6.3.5videobrush影像畫刷83
6.4圖像元素84
6.4.1image元素介紹84
6.4.2透明和遮罩效果85
6.4.3圖像的裁切86
6.5圖形對象shapes86
6.5.1圖形對象簡介87
6.5.2繪製直線87
6.5.3繪製矩形89
6.5.4繪製多邊形90
6.5.5繪製橢圓91
6.5.6繪製多線形92
6.5.7使用路徑工具93
6.6幾何圖形94
6.6.1幾何圖形簡介94
6.6.2簡單幾何圖形94
6.6.3路徑幾何圖形96
6.6.4幾何圖形的組合98
6.6.5小型幾何語言99
6.7silverlight變換特性100
6.7.1圖形變換簡介100
6.7.2rotatetransform旋轉變換100
6.7.3scaletransform縮放變換102
6.7.4skewtransform扭曲漸變102
6.7.5translatetransform移動變換104
6.7.6matrixtransform矩陣變換105
6.7.7transformgroup變換組合105
6.8小結106
第7章多媒體107
7.1mediaelement對象107
7.1.1簡單的多媒體播放107
7.1.2常用mediaelement屬性介紹108
7.1.3互動式多媒體播放109
7.1.4全螢幕模式111
7.1.5時間線標誌115
7.1.6在silverlight中使用播放列表117
7.2microsoftexpressionencoder簡介118
7.2.1使用microsoftexpressionencoder創建時間線標誌119
7.2.2使用microsoftexpressionencoder創建腳本命令122
7.3小結122
第8章動畫123
8.1動畫特性123
8.1.1silverlight動畫簡介123
8.1.2一個簡單的動畫示例123
8.1.3動畫類型125
8.1.4動畫的基本屬性126
8.1.5基本類型動畫129
8.1.6doubleanimation動畫129
8.1.7coloranimation動畫131
8.1.8pointanimation動畫132
8.1.9添加多個動畫133
8.2互動式動畫製作134
8.2.1storyboard故事板對象134
8.2.2一個簡單的互動式動畫示例134
8.2.3將故事板作為資源138
8.3關鍵幀動畫製作139
8.3.1關鍵幀動畫技術簡介139
8.3.2關鍵幀動畫類型140
8.3.3doubleanimationusingkeyframes關鍵幀動畫140
8.3.4coloranimationusingkeyframes關鍵幀動畫142
8.3.5pointanimationusingkeyframes關鍵幀動畫143
8.3.6關鍵幀動畫的基本屬性144
8.3.7關鍵幀屬性144
8.3.8內插方法簡介145
8.3.9linear線性內插方法145
8.3.10discrete離散內插方法145
8.3.11splined樣條內插方法146
8.4小結147
第9章案例學習:電子時鐘148
9.1設計時鐘148
9.1.1時鐘結構148
9.1.2設計時鐘外框149
9.1.3設計時鐘傾斜面149
9.1.4設計時鐘指針151
9.1.5添加時鐘指針動畫152
9.1.6編程控制指針153
9.2小結154
第10章microsoftexpressionblend2設計工具155
10.1基本操作155
10.1.1用戶界面介紹155
10.1.2繪製基本圖形155
10.2添加動畫160
10.2.1創建故事板161
10.2.2添加關鍵幀161
10.2.3添加動畫控制代碼163
10.3添加多媒體元素164
10.3.1添加mediaelement對象164
10.3.2添加多媒體裁切效果166
10.4小結166
第3篇silverlight開發
第11章使用.net開發silverlight應用程式169
11.1創建一個silverlight項目169
11.1.1設計圖形元素170
11.1.2添加提示文本170
11.1.3編寫後台代碼171
11.1.4silverlight程式集介紹173
11.2如何調試silverlight應用程式174
11.3處理異常和錯誤175
11.3.1添加應用程式異常175
11.3.2xaml代碼的錯誤處理176
11.4小結178
第12章創建互動式應用程式179
12.1在x:class中創建事件處理179
12.2處理鍵盤和滑鼠事件181
12.2.1滑鼠事件181
12.2.2mouseeventargs參數183
12.2.3滑鼠動畫示例-簡單相冊185
12.2.4事件冒泡機制186
12.2.5滑鼠托動編程187
12.2.6拖動編程示例189
12.3處理鍵盤事件191
12.3.1添加鍵盤事件191
12.3.2kyeboardeventargs參數192
12.3.3鍵盤事件示例193
12.4使用silverlightsdk中的控制項194
12.4.1button按鈕控制項195
12.4.2repeatbutton按鈕控制項196
12.4.3gripthumb按鈕控制項197
12.4.4thumb按鈕控制項197
12.4.5按鈕控制項繼承層次結構197
12.4.6slider拖動條控制項198
12.4.7scrollbar滾動條控制項200
12.4.8scrollviewer滾動查看器控制項201
12.4.9listbox列表框控制項202
12.5創建silverlight用戶控制項204
12.5.1創建silverlight類庫項目204
12.5.2定義控制項外觀204
12.5.3定義控制項屬性205
12.5.4添加控制項事件207
12.5.5測試自定義控制項210
12.6動態創建控制項211
12.6.1使用.net代碼創建控制項211
12.6.2動態繪製矩形示例212
12.6.3從xaml代碼中創建控制項214
12.6.4滑鼠跟隨示例215
12.7小結216
第13章使用downloader對象217
13.1downloader對象簡介217
13.1.1下載包217
13.1.2創建和初始化downloader對象218
13.1.3顯示下載進度條219
13.1.4接收downloader對象內容220
13.1.5downloader對象的屬性和方法221
13.2使用downloader對象下載多個檔案221
13.3自定義進度條示例222
13.3.1圓形進度顯示223
13.3.2進度條代碼實現223
13.4小結225
第14章xml檔案處理226
14.1獲取遠程xml226
14.2使用xmlreader讀取xml檔案227
14.2.1xmlreader對象簡介228
14.2.2讀取xml元素228
14.2.3讀取xml屬性232
14.3使用xmlwriter寫入xml檔案235
14.3.1xmlwriter簡介235
14.3.2寫入元素236
14.3.3寫入屬性237
14.3.4xmlwriter綜合示例237
14.4用xamlreader類動態載入xaml代碼239
14.5xml檔案和xamlreader示例程式240
14.5.1獲取xml檔案內容242
14.5.2讀取和寫入xml243
14.5.3載入xaml文檔246
14.6小結246
第15章客戶端與伺服器端通信247
15.1silverlight中套用web服務247
15.1.1創建web服務247
15.1.2創建silverlight應用程式248
15.1.3silverlight項目與web服務的部署249
15.2實例體驗:基於web服務的rss閱讀器250
15.2.1創建web服務251
15.2.2使用xlinq解析xml檔案254
15.2.3創建silverlight項目257
15.3小結262
第16章silverlight與html的互動263
16.1在託管代碼中訪問htmldom元素263
16.1.1獲取瀏覽器信息264
16.1.2使用htmlpage類265
16.1.3使用htmldocument類訪問dom元素266
16.1.4使用htmlelement類269
16.1.5為dom元素綁定事件270
16.2silverlight與html互動示例271
16.2.1xaml代碼定義272
16.2.2定義dom元素事件272
16.2.3編寫託管代碼繪製螺旋273
16.3javascript代碼與c#託管代碼的互動276
16.3.1使用託管代碼調用javascript代碼276
16.3.2使用javascript代碼訪問託管代碼279
16.4自動調整畫布尺寸的示例281
16.4.1處理瀏覽器的尺寸變化282
16.4.2調整silverlight外掛程式的尺寸283
16.5小結285
第17章silverlight檔案處理286
17.1使用隔離存儲區286
17.1.1初始化隔離存儲區286
17.1.2在隔離存儲區中操作檔案287
17.2使用silverlight上傳檔案289
17.2.1openfiledialog對象簡介289
17.2.2打開文本檔案291
17.2.3選擇多個檔案292
17.2.4使用webservices上傳檔案294
17.2.5獲取伺服器端檔案列表299
17.3小結306
第18章silverlight與的集成307
18.1microsoftasptfutures簡介307
18.1.1安裝microsoftasptfutures307
18.1.2使用aspt中的xaml伺服器端控制項308
18.1.3使用media伺服器控制項310
18.2在中動態創建xaml312
18.2.1使用內聯xaml創建動態界面312
18.2.2在server端處理silverlight中的事件314
18.2.3在server端動態創建xaml代碼片斷316
18.3小結320
第4篇silverlight實戰
第19章相冊系統實戰323
19.1設計相冊系統外觀323
19.1.1設計圖片的顯示323
19.1.2設計圖片的動畫324
19.1.3添加相冊標題327
19.2編寫c#代碼327
19.2.1載入圖片327
19.2.2編寫滑鼠事件代碼329
19.3小結330
第20章視頻播放器331
20.1設計用戶界面331
20.1.1設計播放器背景332
20.1.2設計播放列表視窗333
20.1.3設計播放窗體336
20.1.4定義播放列表摺疊動畫338
20.2編寫控制代碼339
20.2.1定義狀態枚舉339
20.2.2定義page_loaded事件339
20.2.3使用setuplistbox方法關聯播放列表事件341
20.2.4listboxitem類342
20.2.5播放列表滾動條344
20.2.6播放列表的摺疊編程345
20.2.7載入多媒體檔案347
20.2.8調整播放進度條349
20.2.9播放器控制按鈕350
20.3小結355
第21章silverlightsurface電子圖片夾剖析356
21.1程式結構分析356
21.2圖片夾用戶控制項357
21.2.1用戶控制項xaml設計357
21.2.2用戶控制項程式代碼358
21.3silverlight項目結構362
21.4小結365
第22章silverlight統計圖表366
22.1創建統計圖表用戶控制項366
22.1.1在vs2008中創建silverlight用戶控制項366
22.1.2設計用戶界面367
22.1.3定義圖表屬性368
22.1.4控制項載入時初始化圖表數據373
22.1.5布局圖表374
22.1.6載入圖表數據375
22.1.7繪製圖表378
22.2使用圖表控制項380
22.2.1創建silverlight項目381
22.2.2添加圖表控制項382
22.2.3將silverlight項目添加到as中383
22.3小結385
第23章silverlightui控制項示例386
23.1ui控制項基礎387
23.1.1類層次結構387
23.1.2controlbase基類387
23.1.3buttonbase按鈕控制項基類388
23.1.4screenbase螢幕顯示控制項基類392
23.2實現ui控制項394
23.2.1實現simplebutton按鈕控制項394
23.2.2實現簡單的模式對話框控制項398
23.2.3實現嚮導控制項401
23.2.4實現主螢幕控制項407
23.3使用silverlightui控制項410
23.4小結411
第24章基於treeview控制項的相冊412
24.1項目基礎結構412
24.1.1類層次結構412
24.1.2controlbase控制項基類413
24.1.3buttonbase與panelbase抽象基類416
24.1.4panelchildrencollection面板子元素集合類417
24.2實現treeview控制項422
24.2.1實現摺疊按鈕控制項422
24.2.2實現treenode控制項424
24.2.3treenodecollection節點集合類431
24.2.4實現treeview控制項435
24.3實現animatedflowpanel動畫面板控制項438
24.3.1animatedflowpanel面板介紹438
24.3.2實現animatedflowpanel控制項438
24.4實現wallpaperviewer圖片查看器443
24.4.1設計wallpaperviewer外觀443
24.4.2實現縮略圖按鈕thumbnailbutton控制項444
24.4.3管理和載入圖片447
24.4.4編寫wallpaperviewer後置代碼449
24.5小結453
第25章打氣球遊戲454
25.1程式結構分析454
25.2balloon用戶控制項實現454
25.2.1用戶控制項xaml設計455
25.2.2用戶控制項程式代碼456
25.3silverlight項目分析462
25.3.1用戶界面設計463
25.3.2程式代碼設計464
25.4小結468