DEV Community

Dave H
Dave H

Posted on

System.Mvvm updates

System.Mvvm is a powerful cross-platform MVVM class library for .Net (Framework, Core and .Net 5+), UWP, Xamarin.iOS, Xamarin.Mac, Xamarin.Android.

We have just published an update to all of the DSoft.System.Mvvm packages.

Changes

  • Updated DSoft.System.Mvvm.Hosting with the correct assembly name.
  • Added .NET 5.x targets for the core and hosting libraries, on top of Net Standard 2.0.

GitHub logo newky2k / System.Mvvm

Powerful Cross-platform MVVM class library for .Net (Framework, Core and .Net 5+), UWP, Xamarin.iOS, Xamarin.Mac, Xamarin.Android

System.Mvvm

Model View View Model (MVVM) classes with built in Dependency Injection (DI) for all variants of .NET.

Also provides centralised multi-platform UI Management for WPF (.NET Framework, .NET Core 3.1 and .NET 5.x) and WinUI 3 (Preview 4 and above)(Experimental)

Functionality

  • Implements INotifyPropertyChanged
  • Implements INotifyDataErrorInfo
  • Events for handling and detecting changes
  • Additional properties for
    • IsLoaded
    • IsBusy
    • IsBusyReveresed
    • IsValid
    • IsEditable
    • IsEditableReversed
  • Data Validation
  • Built-In Error notification methods
  • ICommand binding helpers
  • Notification extension actions
    • Rather than overriding a property, add an action when it changes
  • Base View Models for
    • Forms
    • Lists
    • Searchable Lists
    • Tree View Searchable Lists
  • UI
    • Core UI functions for Showing Alerts and Confirmation Dialogs (using platform specific implementations)
      • UWP, WinUI and WPF (.NET Framework and .NET Core 3.1, .NET 5+)

Classes

ViewModel

This is the base View Model abstract class which contains the most common MVVM functionality

ListViewModel<T,T2>

This class inherits from ViewModel and provides additonal functionality for…

Top comments (0)