| Contents at a Glance | 5 |
---|
| Contents | 6 |
---|
| About the Author | 16 |
---|
| About the Technical Reviewer | 17 |
---|
| Acknowledgments | 18 |
---|
| Introduction | 19 |
---|
| Understanding Silverlight | 19 |
| About This Book | 26 |
| The Last Word | 27 |
| Introducing Silverlight | 28 |
---|
| Silverlight and Visual Studio | 28 |
| Creating a Stand-Alone Silverlight Project | 30 |
| Creating a Simple Silverlight Page | 32 |
| Silverlight Compilation and Deployment | 40 |
| Creating an ASP.NET-Hosted Silverlight Project | 51 |
| The Last Word | 54 |
| XAML | 55 |
---|
| XAML Basics | 55 |
| Properties and Events in XAML | 60 |
| Resources | 72 |
| The Last Word | 77 |
| Layout | 78 |
---|
| The Layout Containers | 78 |
| Simple Layout with the StackPanel | 82 |
| The Grid | 89 |
| Coordinate-Based Layout with the Canvas | 100 |
| Custom Layout Containers | 104 |
| Sizing Pages | 111 |
| Navigation | 118 |
| The Last Word | 122 |
| Dependency Properties and Routed Events | 123 |
---|
| Dependency Properties | 123 |
| Routed Events | 131 |
| The Last Word | 147 |
| Elements | 148 |
---|
| The Silverlight Elements | 148 |
| Static Text | 150 |
| Images | 157 |
| Content Controls | 160 |
| Buttons | 164 |
| Tooltips and Pop-Ups | 167 |
| Items Controls | 171 |
| Text Controls | 175 |
| Range-Based Controls | 177 |
| Date Controls | 179 |
| The Last Word | 182 |
| The Application Model | 183 |
---|
| Application Events | 183 |
| Application Tasks | 188 |
| Resources | 198 |
| Class Library Assemblies | 206 |
| The Last Word | 209 |
| Shapes and Geometries | 210 |
---|
| Basic Shapes | 210 |
| Paths and Geometries | 225 |
| Exporting Clip Art | 238 |
| The Last Word | 243 |
| Brushes and Transforms | 244 |
---|
| Brushes | 244 |
| Transparency | 251 |
| Transforms | 258 |
| The Last Word | 265 |
| Animation | 266 |
---|
| Understanding Silverlight Animation | 267 |
| Creating Simple Animations | 268 |
| Animation Types Revisited | 281 |
| Animations in Code | 290 |
| Encapsulating Animations | 301 |
| Frame-Based Animation | 306 |
| The Last Word | 310 |
| Sound, Video, and Deep Zoom | 311 |
---|
| Supported File Types | 311 |
| The MediaElement | 312 |
| Advanced Video Playback | 324 |
| Deep Zoom | 343 |
| The Last Word | 351 |
| Styles, Templates, and Custom Controls | 352 |
---|
| Styles | 352 |
| Template Basics | 356 |
| The Parts and States Model | 364 |
| Creating Templates for Custom Controls | 380 |
| The Last Word | 397 |
| Browser Integration | 398 |
---|
| Interacting with HTML Elements | 399 |
| Code Interaction | 412 |
| Combining Silverlight and HTML Content | 423 |
| The Last Word | 427 |
| ASP.NET and Web Services | 428 |
---|
| ASP.NET Controls That Use Silverlight | 429 |
| Building Web Services for Silverlight | 442 |
| The Last Word | 452 |
| Data Binding | 453 |
---|
| Binding to Data Objects | 454 |
| Binding to a Collection of Objects | 468 |
| Data Conversion | 479 |
| Data Templates | 488 |
| The DataGrid | 494 |
| The Last Word | 507 |
| Isolated Storage | 508 |
---|
| Understanding Isolated Storage | 508 |
| Using Isolated Storage | 510 |
| Reading Local Files with OpenFileDialog | 519 |
| The Last Word | 521 |
| Multithreading | 522 |
---|
| Understanding Multithreading | 522 |
| The Thread Class | 524 |
| The BackgroundWorker | 536 |
| The Last Word | 544 |
| Networking | 545 |
---|
| Interacting with the Web | 545 |
| Processing Different Types of Data | 559 |
| Sockets | 576 |
| The Last Word | 592 |
| Index | 593 |