50 New Silverlight 2 Beta 1 Screencasts

In my “spare time” I’ve been recording some screencasts about Silverlight 2 Beta 1 along with my colleague Mike.

This managed to reach critical mass in that we’ve now built up a list of 50 screencasts so I thought it was definitely time to share rather than plough ahead because I imagine that it won’t be too long before they all get to be out of date. Things move pretty fast.

So, I’ve built a fairly simple custom application ( in Silverlight 2 Beta 1 of course 🙂 ) which allows for playing and download of those videos.

Note: I’ve noticed that if you don’t have Silverlight 2, the application is currently prompting you to install Silverlight 1. I’ll get that fixed but in the meantime, visit here to install Silverlight 2 B1 before launching the application. I’ll fix the installation experience.

You can find the application by clicking here or by clicking on the picture below. It’s also conveniently redirected from http://www.silverlightscreencasts.com;


Just as an aside, the application itself and all of the videos that it streams are all hosted up on Silverlight Streaming although the zipped WMV files for download are hosted from my site because I couldn’t get a good way to extract a URL from Windows Live SkyDrive so you might well find that streaming a video gives you a better result than downloading one because there’s a lot less infrastructure behind my site than Silverlight Streaming 🙂

Note also that for streamed videos there is a maximum length of 10 minutes at Silverlight Streaming so for the few ( 7 or 8 ) videos that are more than 10 minutes long, I split them at 9 minutes and the application automatically loads the second part of the video when the first part ends.

The metadata for the application all starts off in an Excel spreadsheet where I’ve associated it with a schema in order to export as XML. I can then take that, package it into my XAP file and load it up using LINQ to XML at runtime before (pretty much) databinding everything from it. Very cool.

Here’s a topic list;

  1. “Hello World” with VS and Blend
  2. Anatomy of a Silverlight Application
  3. The <asp:Silverlight> Control
  4. Controls – What’s In the Box?
  5. Why Controls have a Content Property
  6. Width, Height, Margin, Padding, Alignment
  7. Laying out Content with Grid
  8. How To Use a GridSplitter
  9. Laying out Content with StackPanel
  10. Laying out Content with Canvas
  11. Embedding Video and Audio
  12. Handling Media Events
  13. Simple Data Binding of UI to .NET Classes
  14. List Based Data Binding
  15. Data Binding UI to .NET Classes with Converters
  16. Using Custom Types in XAML
  17. Applying Simple Styles to Control Look and Feel
  18. Templating a Simple Button Control
  19. How to Build a Simple User Control
  20. Controlling Animations & Storyboards
  21. Accessing resources from XAP/DLL/Site.
  22. Asynchronous Downloads with the WebClient Class
  23. HTTP request with HttpWebRequest
  24. Making Requests Cross-Site to Another Domain
  25. Making Calls to Web Services
  26. Calling Web Services over HTTPS
  27. Using Sockets
  28. Using File Dialogs & Files from the User
  29. Using Isolated Storage for Application Data
  30. Accessing and Changing Isolated Storage Quotas
  31. Modifying the HTML DOM from .NET Code
  32. Calling Javascript Functions from .NET Code
  33. Calling .NET Functions from Javascript Code
  34. Handling .NET Events in Javascript Code
  35. Handling HTML DOM Events in .NET Code
  36. Evaluating Javascript from .NET Code
  37. How to Pass Initial Parameters from the Web Page
  38. How To Display A Custom Splash Screen
  39. Reading/Writing XML with LINQ to XML
  40. Dynamically Loading Assemblies/Code
  41. The <asp:MediaPlayer> Control
  42. More on the <asp:MediaPlayer> Control
  43. Loading Media at Runtime
  44. Hosting an Application on Silverlight Streaming
  45. Using Multiple Threads with the BackgroundWorker
  46. Making Use of Custom Fonts
  47. Getting Started with MultiScaleImage (DeepZoom)
  48. Getting Started with the DeepZoom Composer
  49. Getting Started with the DataGrid
  50. Insert, Update, Delete with the DataGrid

Enjoy the videos. All feedback welcome. All mistakes, bugs etc. are mine and, if you let me know, I’ll try and fix them as time allows.

Note – I’ve tested a little in IE7 and Firefox on my Vista machine and also in Firefox and Safari 3.1 on my Mac and the app seems to “basically work” in those places.