Search
Model-View-ViewModel application framework and library for WPF, Surface, and Silverlight

MvvmFx makes it easy to implement M-V-VM and leverage pre-existing functionality and code for common situations. It's developed in C#.

It contains a set of base classes and functionality for rapidly creating applications using the M-V-VM approach to application architecture.

It targets both WPF and Silverlight, and contains specific classes for supporting Microsoft Surface development.

It favours a compositional approach over inheritance - the base ViewModel classes are very lightweight and additional behaviors are exposed via composition

It provides the following functionality:
  • Light-weight Base ViewModel and ViewModelCollection classes
  • Support for observing ViewModel changes via the ObservableViewModel and ObservableViewModelCollection classes.
  • Easy support for binding to selectable collections via the SelectableViewModel and SelectableCollection classes.
  • Several implementations of ICommand - ViewModelCommand, RoutedViewModelCommand, ActionCommand, DelegateCommand.
  • CommandHandler class for handling the execution of commands at the level of the views.
  • Validation rules engine - based on the delegate approach to validation rules in Rocky Lhotka's CSLA framework.
  • Out-the-box support for process-oriented GUI's such as wizards or page workflows, via the ProcessManagement namespace.
  • Change tracking support - automatically track when a ViewModel or one of its child objects is modified.
  • Classes to load and save ViewModel objects to/from their corresponding model objects.
  • Factory classes for creating ViewModel objects to encapsulate their hydration from model objects.
  • Support for stateful Surface applications using a state-engine approach.
  • Several useful ValueConverters for common scenarios
  • Many useful Helper classes for common scenarios.
  • Attached properties for:
    • Binding Silverlight controls to commands
    • Binding WPF RoutedEvents to commands
    • Getting DesignTime text in Silverlight - like the FallbackValue property in WPF.
  • DataTemplateSelector for Silverlight
  • Several Sample projects and examples to demonstrate how to use the framework.

There is a google group for this project here:
http://groups.google.com/group/mvvmfx

mvvmfxsmall.png
Last edited Mar 7 2010 at 11:41 AM by sambourton, version 9
Updating...
© 2006-2012 Microsoft | Get Help | Privacy Statement | Terms of Use | Code of Conduct | Advertise With Us | Version 2012.2.15.18416