没有合适的资源?快使用搜索试试~ 我知道了~
首页Silverlight 3高级编程深度探索:C#实战
Silverlight 3高级编程深度探索:C#实战
需积分: 10 19 下载量 169 浏览量
更新于2024-07-22
收藏 25.57MB PDF 举报
"《Silverlight 3 高级编程 C#篇》是Matthew MacDonald撰写的一本专业书籍,专注于讲解如何使用C#语言进行Silverlight 3应用开发。这本书旨在帮助开发者创建跨平台的.NET浏览器应用程序,书中内容全面且配有丰富的颜色插图。"
《Pro Silverlight 3 in C#》涵盖了Silverlight 3的关键技术和高级概念,包括但不限于以下知识点:
1. **Silverlight基础**:介绍Silverlight是什么,它的用途,以及为什么它是开发跨平台Web应用程序的理想选择。它提供了一个轻量级的框架,可以创建丰富的用户体验,尤其是在浏览器环境中。
2. **C#编程**:深入探讨C#语言在Silverlight开发中的应用,包括类、对象、接口、委托、事件、属性、方法等基本概念,以及C#的高级特性如 LINQ 和匿名类型。
3. **UI设计**:详细讲解XAML(Extensible Application Markup Language)语言,它是Silverlight界面设计的主要工具,通过XAML可以实现声明式编程,创建复杂的用户界面。
4. **数据绑定**:讨论如何在Silverlight应用中实现数据绑定,使UI与业务逻辑紧密关联,简化代码并提高可维护性。
5. **动画和可视化效果**:介绍如何创建动态和交互式的用户界面,包括使用故事板、转换和动画效果来提升用户体验。
6. **多媒体支持**:讲解Silverlight对音频和视频的支持,如何嵌入和播放多媒体内容,以及处理流媒体的技巧。
7. **网络通信**:探讨Silverlight的网络编程模型,包括使用HTTP、TCP/IP和WebSocket进行数据交换,以及利用异步编程模型处理网络请求。
8. **离线应用支持**:介绍Isolated Storage和脱机工作模式,使Silverlight应用能在没有网络连接时仍能运行。
9. **Silverlight安全**:讨论Silverlight的安全模型,包括沙箱环境和权限管理,确保应用程序在受限制的环境中安全运行。
10. **Silverlight工具和框架**:涵盖Visual Studio集成开发环境的使用,以及相关的开发工具和框架,如 Blend 和 Prism 等。
11. **Silverlight调试和测试**:讲解如何有效地调试Silverlight应用,以及如何构建自动化测试来保证代码质量。
12. **案例研究**:通过实际项目案例,展示如何将所学知识应用于实际开发场景,提升读者解决实际问题的能力。
这本书还经过了技术审查,确保内容的专业性和准确性。技术审阅者Damien Foggon的专业反馈使得本书内容更加严谨和完善。无论你是初学者还是有经验的开发者,都可以从《Pro Silverlight 3 in C#》中获得宝贵的指导和洞察。
■ CONTENTS
xiv
Animation Easing.........................................................................................................................339
Using an Easing Function .......................................................................................................................340
Easing In and Easing Out........................................................................................................................341
Easing Function Classes.........................................................................................................................342
Animation Types Revisited..........................................................................................................346
Animating Transforms ............................................................................................................................346
Animation Perspective Projections ........................................................................................................349
Animating Brushes..................................................................................................................................351
Animating Pixel Shaders.........................................................................................................................352
Key-Frame Animation .............................................................................................................................353
Discrete Key Frames..........................................................................................................................355
Easing Key Frames ............................................................................................................................355
Spline Key Frames.............................................................................................................................356
Animations in Code .....................................................................................................................357
The Main Page.........................................................................................................................................359
The Bomb User Control ...........................................................................................................................360
Dropping the Bombs ...............................................................................................................................362
Intercepting a Bomb ...............................................................................................................................365
Counting Bombs and Cleaning Up..........................................................................................................366
Encapsulating Animations ..........................................................................................................368
Page Transitions .....................................................................................................................................369
The Base Class........................................................................................................................................370
The Wipe Transition ................................................................................................................................372
Frame-Based Animation .............................................................................................................374
Animation Performance ..............................................................................................................378
Desired Frame Rate.................................................................................................................................378
Hardware Acceleration ...........................................................................................................................379
Enabling Hardware Acceleration ......................................................................................................380
Bitmap Caching .................................................................................................................................380
Evaluating Hardware Acceleration ...................................................................................................383
The Last Word..............................................................................................................................385
■Chapter 11: Sound, Video, and Deep Zoom....................................................................387
Supported File Types...................................................................................................................387
The MediaElement.......................................................................................................................388
Controlling Playback...............................................................................................................................389
Handling Errors .......................................................................................................................................390
Playing Multiple Sounds .........................................................................................................................390
Changing Volume, Balance, and Position ..............................................................................................391
Playing Video...........................................................................................................................................395
Client-Side Playlists................................................................................................................................396
Server-Side Playlists...............................................................................................................................396
■ CONTENTS
xv
Progressive Downloading and Streaming..............................................................................................397
Adaptive Streaming.................................................................................................................................399
Advanced Video Playback...........................................................................................................400
Video Encoding........................................................................................................................................400
Encoding in Expression Encoder ............................................................................................................401
Markers ...................................................................................................................................................403
Adding Markers with Expression Encoder .......................................................................................403
Using Markers in a Silverlight Application.......................................................................................405
VideoBrush ..............................................................................................................................................408
Video Effects ...........................................................................................................................................409
Deep Zoom...................................................................................................................................414
Creating a Deep Zoom Image Set...........................................................................................................416
Using a Deep Zoom Image Set in Silverlight..........................................................................................419
The Last Word..............................................................................................................................423
■Chapter 12: Styles and Behaviors ..................................................................................425
Styles ...........................................................................................................................................425
Defining a Style.......................................................................................................................................426
Applying a Style ......................................................................................................................................427
Dynamic Styles........................................................................................................................................428
Style Inheritance .....................................................................................................................................429
Organizing Styles ....................................................................................................................................430
Behaviors.....................................................................................................................................431
Getting Support for Behaviors ................................................................................................................432
Triggers and Actions...............................................................................................................................432
Creating an Action.............................................................................................................................433
Connecting an Action to an Element.................................................................................................435
Design-Time Behavior Support in Blend ..........................................................................................436
Creating a Targeted Trigger..............................................................................................................439
Creating a Behavior.................................................................................................................................443
Finding More Behaviors..........................................................................................................................446
The Last Word..............................................................................................................................448
■Chapter 13: Templates and Custom Controls ................................................................449
Template Basics..........................................................................................................................449
Creating a Template................................................................................................................................450
Reusing Control Templates.....................................................................................................................451
The ContentPresenter .............................................................................................................................452
Template Bindings ..................................................................................................................................452
Setting Templates through Styles ..........................................................................................................454
Reusing Colors ........................................................................................................................................455
The Parts and States Model........................................................................................................456
Understanding States with the Button Control ......................................................................................457
■ CONTENTS
xvi
Showing a Focus Cue..............................................................................................................................462
Transitions...............................................................................................................................................463
The Default Transition.......................................................................................................................464
From and To Transitions ...................................................................................................................465
Transitioning to a Steady State.........................................................................................................466
Custom Transition .............................................................................................................................466
Understanding Parts with the Slider Control .........................................................................................468
Creating Templates for Custom Controls ...................................................................................472
Planning the FlipPanel Control ...............................................................................................................473
Creating the Solution ..............................................................................................................................474
Starting the FlipPanel Class....................................................................................................................474
Adding the Default Style with Generic.xaml ..........................................................................................476
Choosing Parts and States......................................................................................................................478
Starting the Default Control Template ...................................................................................................480
The FlipButton Control ............................................................................................................................481
Defining the State Animations................................................................................................................482
Wiring Up the Elements in the Template................................................................................................484
Using the FlipPanel .................................................................................................................................486
Using a Different Control Template........................................................................................................487
The Last Word..............................................................................................................................489
■Chapter 14: Browser Integration....................................................................................491
Interacting with HTML Elements.................................................................................................492
Getting Browser Information ..................................................................................................................493
The HTML Window ..................................................................................................................................494
Popup Windows.......................................................................................................................................495
Inspecting the HTML Document .............................................................................................................496
Manipulating an HTML Element..............................................................................................................498
Inserting and Removing Elements....................................................................................................501
Changing Style Properties.................................................................................................................502
Handling JavaScript Events....................................................................................................................503
Code Interaction ..........................................................................................................................505
Calling Browser Script from Silverlight..................................................................................................506
Calling Silverlight Methods from the Browser.......................................................................................506
Instantiating Silverlight Objects in the Browser....................................................................................509
Combining Silverlight and HTML Content...................................................................................510
Sizing the Silverlight Control to Fit Its Content......................................................................................511
Placing the Silverlight Control Next to an HTML Element .....................................................................512
Securing HTML Interoperability ..................................................................................................515
The Last Word..............................................................................................................................516
■Chapter 15: ASP.NET Web Services................................................................................517
Building Web Services for Silverlight.........................................................................................517
■ CONTENTS
xvii
Creating a Web Service...........................................................................................................................518
Adding a Service Reference....................................................................................................................519
Calling the Web Service..........................................................................................................................521
Configuring the Web Service URL...........................................................................................................524
Web Service Data Types..............................................................................................................526
More Advanced Web Services.....................................................................................................527
Cross-Domain Web Service Calls...........................................................................................................528
Monitoring the Network Connection ......................................................................................................530
Using ASP.NET Platform Services...........................................................................................................531
Duplex Services...........................................................................................................................533
Configuring the Service ..........................................................................................................................534
The Interfaces .........................................................................................................................................535
The Service..............................................................................................................................................536
The Client.................................................................................................................................................537
The Last Word..............................................................................................................................539
■Chapter 16: Data Binding................................................................................................541
Binding to Data Objects...............................................................................................................542
Building a Data Object ............................................................................................................................542
Displaying a Data Object with DataContext...........................................................................................543
Storing a Data Object as a Resource......................................................................................................546
Editing with Two-Way Bindings .............................................................................................................547
Validation ................................................................................................................................................548
ValidatesOnException........................................................................................................................548
NotifyOnValidationError.....................................................................................................................551
The Validation Class..........................................................................................................................552
Change Notification.................................................................................................................................553
Building a Data Service...........................................................................................................................554
Calling the Data Service..........................................................................................................................557
Binding to a Collection of Objects...............................................................................................559
Displaying and Editing Collection Items ................................................................................................559
Inserting and Removing Collection Items..............................................................................................563
Binding to a LINQ Expression .................................................................................................................564
Master-Details Display ...........................................................................................................................567
Data Conversion ..........................................................................................................................570
Formatting Strings with a Value Converter............................................................................................570
Creating Objects with a Value Converter ...............................................................................................574
Applying Conditional Formatting............................................................................................................577
Data Templates............................................................................................................................579
Separating and Reusing Templates .......................................................................................................581
More Advanced Templates .....................................................................................................................581
Changing Item Layout.............................................................................................................................583
■ CONTENTS
xviii
The Last Word..............................................................................................................................584
■Chapter 17: Data Controls ..............................................................................................585
Better Data Forms .......................................................................................................................586
The Goal: Data Class Markup .................................................................................................................586
The Label .................................................................................................................................................587
The DescriptionViewer............................................................................................................................589
The ValidationSummary..........................................................................................................................590
Data Annotations.........................................................................................................................593
Raising Annotation Errors.......................................................................................................................593
The Annotation Attributes.......................................................................................................................595
Required.............................................................................................................................................595
StringLength ......................................................................................................................................595
Range.................................................................................................................................................596
RegularExpression.............................................................................................................................596
CustomValidation ..............................................................................................................................599
Web Service Type Sharing......................................................................................................................601
Identifying Your Data Classes...........................................................................................................601
Setting Up the Visual Studio Solution...............................................................................................602
The DataGrid................................................................................................................................604
Creating a Simple Grid............................................................................................................................605
Resizing and Rearranging Columns.......................................................................................................607
Defining Columns....................................................................................................................................608
The DataGridCheckBoxColumn.........................................................................................................610
The DataGridTemplateColumn ..........................................................................................................610
Formatting and Styling Columns............................................................................................................612
Formatting Rows.....................................................................................................................................614
Row Details .............................................................................................................................................616
Freezing Columns....................................................................................................................................617
Selection..................................................................................................................................................618
Sorting.....................................................................................................................................................619
DataGrid Editing...........................................................................................................................620
Editing with Templates ...........................................................................................................................620
Validation and Editing Events.................................................................................................................621
The PagedCollectionView............................................................................................................624
Sorting.....................................................................................................................................................625
Filtering ...................................................................................................................................................625
Grouping..................................................................................................................................................626
Paging......................................................................................................................................................628
The TreeView...............................................................................................................................631
Filling a TreeView....................................................................................................................................631
A Data-Bound TreeView..........................................................................................................................632
剩余833页未读,继续阅读
2013-08-14 上传
2011-06-06 上传
2010-03-17 上传
2023-12-24 上传
2023-07-24 上传
2023-11-29 上传
2023-08-18 上传
2023-05-12 上传
2023-08-10 上传
frank_20080215
- 粉丝: 166
- 资源: 1776
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C语言快速排序算法的实现与应用
- KityFormula 编辑器压缩包功能解析
- 离线搭建Kubernetes 1.17.0集群教程与资源包分享
- Java毕业设计教学平台完整教程与源码
- 综合数据集汇总:浏览记录与市场研究分析
- STM32智能家居控制系统:创新设计与无线通讯
- 深入浅出C++20标准:四大新特性解析
- Real-ESRGAN: 开源项目提升图像超分辨率技术
- 植物大战僵尸杂交版v2.0.88:新元素新挑战
- 掌握数据分析核心模型,预测未来不是梦
- Android平台蓝牙HC-06/08模块数据交互技巧
- Python源码分享:计算100至200之间的所有素数
- 免费视频修复利器:Digital Video Repair
- Chrome浏览器新版本Adblock Plus插件发布
- GifSplitter:Linux下GIF转BMP的核心工具
- Vue.js开发教程:全面学习资源指南
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功