Plugin.Wpf.MVVMExpress.Core
1.0.0
dotnet add package Plugin.Wpf.MVVMExpress.Core --version 1.0.0
NuGet\Install-Package Plugin.Wpf.MVVMExpress.Core -Version 1.0.0
<PackageReference Include="Plugin.Wpf.MVVMExpress.Core" Version="1.0.0" />
<PackageVersion Include="Plugin.Wpf.MVVMExpress.Core" Version="1.0.0" />
<PackageReference Include="Plugin.Wpf.MVVMExpress.Core" />
paket add Plugin.Wpf.MVVMExpress.Core --version 1.0.0
#r "nuget: Plugin.Wpf.MVVMExpress.Core, 1.0.0"
#:package Plugin.Wpf.MVVMExpress.Core@1.0.0
#addin nuget:?package=Plugin.Wpf.MVVMExpress.Core&version=1.0.0
#tool nuget:?package=Plugin.Wpf.MVVMExpress.Core&version=1.0.0
Plugin.Wpf.MVVMExpress.Core
UI-framework-free MVVM primitives for .NET. No WPF or MAUI reference.
ObservableModel, ViewModel lifecycle, async commands, AsyncState<T>, Outcome, messaging, INavigator, ICache, and IAuthState.
public sealed class HomeViewModel : ViewModel
{
public AsyncState<IReadOnlyList<Product>> Products { get; } = new();
public AsyncModelCommand RefreshCommand { get; }
public HomeViewModel(ICatalog catalog)
{
RefreshCommand = new AsyncModelCommand(
ct => Products.LoadAsync(token => catalog.ListAsync(token), ct));
}
}
Install
dotnet add package Plugin.Wpf.MVVMExpress.Core
Target framework: net10.0. Version 1.0.0.
services.AddMvvmExpress(); // tests and shared libraries
WPF apps also add Plugin.Wpf.MVVMExpress and call UseWpfMvvmExpress().
Do not call MessageBox.Show from a ViewModel. Use IDialogs / INavigator.
License: MIT. Niladri Padhy / MauiEssentials.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Plugin.Wpf.MVVMExpress.Core:
| Package | Downloads |
|---|---|
|
Plugin.Wpf.MVVMExpress
WPF host for MVVMExpress: UseWpfMvvmExpress, DispatcherMainThread, window context, and Loaded/Unloaded ViewModel lifecycle. Depends on Plugin.Wpf.MVVMExpress.Core. |
|
|
Plugin.Wpf.MVVMExpress.Testing
LeakProbe, ScaleProfile, FakeDialogs, FakeNavigator, FakeMainThread, FakeConnectivity, FakeMessageHub, and ScopedNavigator for unit-testing Plugin.Wpf.MVVMExpress ViewModels. |
|
|
Plugin.Wpf.MVVMExpress.Pagination
PagedCollection, SnapshotCollection, and SearchQuery for Plugin.Wpf.MVVMExpress lists. |
|
|
Plugin.Wpf.MVVMExpress.Validation
IValidator and DataAnnotationsValidator for Plugin.Wpf.MVVMExpress. FluentValidation remains an optional app-level adapter. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 143 | 9/9/2026 |
| 0.1.2-preview | 130 | 9/9/2026 |
| 0.1.1-preview | 130 | 9/9/2026 |
| 0.1.0-preview | 128 | 9/9/2026 |
1.0.0: first stable WPF MVVMExpress. Frame navigation, dialogs, templates, and VS Code / Visual Studio extensions.