Introduction
This project demonstrates an implementation of the MVVM (Model-View-ViewModel) pattern to create a fully “Designable” Silverlight Video Player. This is not to be confused with a “Skinable” Video Player. A Skinable Video Player allows you to change the look and feel of the buttons that control the player. A Designable player allows a Designer to use ANY set of controls to implement the Video Player.
The MVVM pattern allows a programmer to create an application that has absolutely no UI. The programmer only creates a ViewModel and a Model. A designer with no programming ability at all, is then able to start with a blank page and completely create the View (UI) in Microsoft Expression Blend 4 (or higher).
Note: to build the prject you may need to install the Silverlight 3.0 RX Extensions from http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx (they are scheduled to be included in the released version of ASP.NET 4.0).
from Michael Washington more here