Project Description
With Xaml Mvp you can create Windows Phone 7 applications based on the MVP pattern. By seperating Data from Behaviour you still get the benefit of MVVM without your View Model becoming a fat-controller.

Silverlight and WPF coming soon!
Developed using C#

Visit the documentation

Features v1.3 and 1.4 available on nuget (Install-Package xmvp)
  • No longer requires MvpApplication use MvpApplicationService instead. This allows the App.xaml.cs to remain untouched.
  • Nuget installs MvpApplicationService into App.xaml
  • Nuget installs Project Item templates Mvp Page and Mvp Control
  • All other features from v1.2 remain intact.

Features v1.2 /source only/
  • Beta version of Silverlight support with samples to come.
  • Blend and Designer supported
  • Create Phone Application Pages using the MvpPage type
  • Create User Controls using the MvpControl type
  • Let the framework guide your process with the MvpApplication type.
  • /breaking change/ Bind Views to Presenters in XAML using the View Attached property: mvp:View.Presenter="NameSpace.Type" due to an issue with Type.GetType in silverlight we now find the target Presenter through the presenter binder collection. This means you don't need to specify the assembly name anymore. /breaking change/.
  • Create Hydrators to survive Tombstones
  • Use Data Binding for what it was meant for data and leave the presenter for the behaviour
  • Editable`T implementation of IEditableObject to allow your models to revert back to their previous states on cancel events.
  • Overridable URI mapping ready to go for "/Views/{view}View.xaml" and "/Views/{noun}{verb}View.xaml"

Features v1.1
  • Blend and Designer supported
  • Create Phone Application Pages using the MvpPage type
  • Create User Controls using the MvpControl type
  • Let the framework guide your process with the MvpApplication type.
  • Bind Views to Presenters in XAML using the View Attached property: mvp:View.Presenter="NameSpace.Type, Assembly"
  • Create Hydrators to survive Tombstones
  • Use Data Binding for what it was meant for data and leave the presenter for the behaviour
  • Editable`T implementation of IEditableObject to allow your models to revert back to their previous states on cancel events.
  • Overridable URI mapping ready to go for "/Views/{view}View.xaml" and "/Views/{noun}{verb}View.xaml"


Last edited Jun 22, 2011 at 1:23 PM by hoffmanic, version 12