/MvvmMicro

A clean and lightweight MVVM framework for WPF, UWP and .NET Standard 2.0 inspired by MVVM Light Toolkit.

Primary LanguageC#MIT LicenseMIT

logo MvvmMicro

Nuget

A lightweight MVVM framework for .NET inspired by MVVM Light Toolkit.

Goals

  • No third party dependencies, such as CommonServiceLocator or System.Windows.Interactivity.
  • No feature kreep – only core MVVM types and services are included, such as RelayCommand, AsyncRelayCommand, ObservableObject, and a simple IMessenger.

Supported platforms

  • .NET Framework 4.6.2 & .NET 6.0 (WPF)
  • .NET Standard 2.0 (Xamarin.Forms, Avalonia, MAUI, etc.)
  • Universal Windows Platform (UWP)

Installation

The primary way to use MvvmMicro is by adding the nuget package to your project:

Install-Package MvvmMicro

Overview

Type Description
ObservableObject The base class for objects that support property change notification.
ViewModelBase The base class for view models with the Messenger and IsInDesignMode properties.
Messenger A service for sending and receiving messages, typically between view models and views.
RelayCommand,
RelayCommand<T>
An ICommand implementation based on a synchronous delegate for Execute and CanExecute.
AsyncRelayCommand,
AsyncRelayCommand<T>
An ICommand implementation based on an asynchronous delegate for Execute with cancellation support.

Also check out the class diagram.

License

Code licensed under the MIT License.