VisualStateManager, a.k.a. VSM, I quote our WPF architect John Gossman's words from the architectural view:
VisualStateManager, by providing an abstraction of a VisualState, makes unifying the deskop and web models much more straightforward. While currently in Silverlight a VisualState contains a Storyboard, in the future it contain a group of Setters, just as in WPF. And while currently the user must call VisualStateManager.GoToState in code, in the future a GoToState action in the body of a Trigger will allow WPF style "codeless" templates to utiltize VisualStates and get the benefits of automatic transition generation and a more designer-friendly tooling experience. (details...)
Here are a few good resources about VSM:
- Visual States in XAML Templates by WPF Architect John Gossman
- VisualStateManager for desktop WPF again by John Gossman - in this blog, John introduced a solution project for prototyping only purposes, you can download the project source code for a desktop WPF implementation of VisualStateManager and a behavior system that allows existing WPF controls to work with it.
- Creating Control Skins with Visual State Manager - An Introduction by Christian Schormann
- Styles, Templates, and VisualStateManager by Jesse Liberty, Senior Program Manager on the .NET Developer Platform
- Parts & States Model with VisualStateManager (Part 1, Part 2, Part 3, Part 4) by Karen Corby
More to come...