Suchen und Finden
Contents at a Glance
5
Contents
6
Foreword
25
About the Author
27
About the Technical Reviewer
28
Acknowledgments
29
Introduction
30
Who This Book Is For
31
How This Book Is Structured
32
Prerequisites
32
Downloading the Code
32
Contacting the Authors
32
A Quick Tour of Silverlight 3 Development
33
Getting Up to Speed with Silverlight 3
33
1-1. Setting Up the Silverlight 3 Environment
38
1-2. Installing Additional Silverlight-Related Services and Controls
39
1- 3. Understanding the Structure of a Silverlight Solution
40
1-4. Understanding the Developer/ Designer Workflow
49
1-5. Understanding the Basics of Expression Blend 3
52
1-6. Accessing Source Control
59
1-7. Running Silverlight 3 on a Mac
60
1-8. Running Silverlight on Linux
61
Application Design and Programming Model
62
The Mechanics of Silverlight Applications
62
2-1. Adding a Custom Class
63
2-2. Adding a Custom Control
70
2-3. Locating a Control
73
2-4. Dynamically Loading XAML from JavaScript
78
2-5. Dynamically Loading XAML from Managed Code
83
2-6. Persisting Data on the Client
85
2- 7. Opening a Local File from a Silverlight Application
92
2-8. Accessing XML Data with an XmlReader
97
2-9. Accessing XML Data with LINQ
100
2-10. Managing Unhandled Exceptions
105
2-11. Executing Work on a Background Thread with Updates
106
2-12. Updating the UI from a Background Thread
116
2-13. Managing XAML Resources
121
2-14. Managing Embedded Resources
127
2-15. Creating Silverlight Using Ruby, Python, or JScript
132
2-16. Creating Application Services
136
2-17.
142
2-18. Save a File Anywhere on the User’s System
145
Developing User Experiences
148
3-1. Importing Art from Expression Design
149
3-2. Working with Color and Gradients in Blend
152
3-3. Positioning UI Elements with a Canvas
163
3-4. Positioning UI Elements with a StackPanel
167
3-5. Positioning UI Elements with a Grid
171
3-6. Using Shapes to Draw
177
3-7. Using Paths to Draw
183
3-8. Using Geometries to Draw
190
3-9. Providing Scrollable Content
196
3-10. Applying a Border to Elements
198
3-11. Using Simple Animations with Objects
204
3-12. Animating UI Elements with Keyframes
212
3-13. Transforming an Object
222
3-14. Creating a Simple Cartoon Scene
228
3-15. Handling Keyboard Input
240
3-16. Working with Ink
247
3-17. Adding 3-D Effects to UI Elements
254
3-18. Dynamically Creating Bitmaps
266
3-19. Improving Graphic Animation and Video Performance
274
3-20. Improve Animation with Custom Easing Functions
278
3-21. Adding Pixel Shader Visual Effects
285
3-22. Create and Work with Design-Time Data in Expression Blend
290
3-23. Reuse Application Interactivity with Behaviors
301
3-24. Prototype Application Design
303
Data Binding
306
4-1. Binding Application Data to the UI
306
4-2. Binding Using a DataTemplate
314
4-3. Receiving Change Notifications for Bound Data
322
4-4. Converting Values During Data Binding
340
4-5. Binding Across Elements
354
4-6. Validating Input for Bound Data
362
4-7. Controlling Updates
378
Controls
389
A Word About the Samples
390
5-1. Customizing a Control’s Basic Appearance
390
5-2. Replacing the Default UI of a Control
394
5-3. Customizing the Default ListBoxItem UI
411
5-4. Displaying Information in a Pop-up
420
5-5. Displaying Row Details in a DataGrid
432
5-6. Applying Custom Templates to a DataGrid Cell
442
5-7. Creating Custom Column Types for a DataGrid
448
5-8. Creating a Composite User Control
455
5-9. Creating a Custom Layout Container
469
5-10. Creating a Custom Control
483
5-11. Defining a Custom Visual State
500
5-12. Controlling ScrollViewer Scroll Behavior
512
5-13. Customizing the Binding Validation User Interface
522
5-14. Control Behavior in Expression Blend
537
Browser Integration
545
6-1. Hosting Silverlight in HTML on Any Platform
545
6-2. Hosting Silverlight in ASP.NET
550
6-3. Setting Focus for Keyboard Input
551
6-4. Implementing a Full-Screen UI
558
6-5. Calling a JavaScript Method from Managed Code
567
6-6. Calling a Managed Code Method from JavaScript
576
6-7. Exchanging Data Among Multiple Plug-ins
590
6-8. Embedding Silverlight Within a Windows Gadget
597
6-9. Embed Silverlight in an Internet Explorer 8 Web Slice
613
6-10. Take Advantage of the Navigation Framework
618
Networking and Web Service Integration
628
A Quick Word about the Samples
629
7-1. Consuming a WCF Service
630
7-2. Exchanging XML Messages over HTTP
652
7-3. Using JSON Serialization over HTTP
664
7-4. Accessing Resources over HTTP
670
7-5. Using Sockets to Communicate over TCP
696
7-6. Enabling Cross-Domain Access
729
7-7.
733
7-8. Exchanging Data Between Silverlight Applications
761
Integrating Rich Media
781
8-1. Adding Video to a Page
781
8-2. Creating a Complete Video Player
786
8-3. Adding Streaming Media Support
818
8-4. Using Playlists to Package Media
859
8-5. Using Markers to Display Timed Content
865
8-6. Displaying and Seeking Using SMPTE Timecodes
882
8-7. Building a Managed Decoder for Silverlight
896
Building LOB Applications
921
9-1. Creating a LOB Application Framework
922
9-2. Adding Data to a LOB Application
934
9-3. Adding Advanced LOB Data Access with Data- Form Support
943
9-4. Adding Support for Data Validation
952
9-5. Adding .NET RIA Services to an Existing Application
958
9-6. Using the .NET RIA Services Class Library to Isolate Services
961
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.