You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 25, 2026. It is now read-only.
This issue is meant to be used to track all the feature requests and discussions regarding API changes or other tweaks for the Microsoft.Toolkit.Mvvm package, which was introduced with #3230 and recently announced. 🎉
Platform and Runtime Independent - .NET Standard 2.0 🚀 (UI Framework Agnostic)
Simple to pick-up and use - No strict requirements on Application structure or coding-paradigms (outside of 'MVVM'ness) i.e. flexible usage
À la carte - Developer able to choose the components they wish to leverage
Reference Implementation - Lean and performant, provides compliments to interfaces and paradigms hinted at in the Base-Class Library, but without provided implementations.
If you want more info on the package, you're welcome to browse our samples and preview documentation (here), watch the initial presentation by @michael-hawker and I (here) or watch Michael's presentation during the UNO Conf (here).
Tracking changes so far
Will be updating this list with all the current (work in progress) changes that are being included into a PR.
Overview
This issue is meant to be used to track all the feature requests and discussions regarding API changes or other tweaks for the
Microsoft.Toolkit.Mvvmpackage, which was introduced with #3230 and recently announced. 🎉Find initial docs and samples here at https://aka.ms/mvvmtoolkit.
Key Tenants
If you want more info on the package, you're welcome to browse our samples and preview documentation (here), watch the initial presentation by @michael-hawker and I (here) or watch Michael's presentation during the UNO Conf (here).
Tracking changes so far
Will be updating this list with all the current (work in progress) changes that are being included into a PR.
Preview 5 (#3562)
ObservableValidator.ClearErrorsmethodObservableValidator.ValidatePropertymethodObservableValidator.ValidateAllPropertiesmethodObservableValidator.GetErrorsmethodWeakReferenceMessengeron .NET Standard 2.0Preview 4 (#3527)
Iocclass (see docs)ObservableObject.OnPropertyChanged(PropertyChangedEventArgs)overloadObservableObject.OnPropertyChanging(PropertyChangingEventArgs)overloadOnPropertyChangedandOnPropertyChangingoverloads with astringparam are no longer virtualIAsyncRelayCommand.CanBeCanceledpropertyIAsyncRelayCommandpropertiesObservableValidator.HasErrorspropertyTrySetPropertymethods toObservableValidatorPreview 3 (shipped!) 🚀
ComponentModel, Input, DependencyInjection (#3429)
ObservableValidatorclass forINotifyDataErrorInfoSetPropertyAndNotifyOnCompletionsignature (7-14x faster, 60% memory usage reduction)Expression<Func<T>>argsSetProperty<T, TModel>overload to allow stateless delegates and better performanceAsyncRelayCommandtypes (and interfaces)Iocclass andMicrosoft.Extensions.DependencyInjectiondependencyMessenger (#3424)
WeakReferenceMessengertypeMessengertoStrongReferenceMessengerStrongReferenceMessengerIMessenger.Registersignature to remove closures (35% memory usage reduction, nothiscaptured)IMessenger.CleanupAPI to help with extensibilityObservableRecipienttoWeakReferenceMessenger