NuExt.Minimal.Mvvm.Windows
0.2.0
dotnet add package NuExt.Minimal.Mvvm.Windows --version 0.2.0
NuGet\Install-Package NuExt.Minimal.Mvvm.Windows -Version 0.2.0
<PackageReference Include="NuExt.Minimal.Mvvm.Windows" Version="0.2.0" />
paket add NuExt.Minimal.Mvvm.Windows --version 0.2.0
#r "nuget: NuExt.Minimal.Mvvm.Windows, 0.2.0"
// Install NuExt.Minimal.Mvvm.Windows as a Cake Addin #addin nuget:?package=NuExt.Minimal.Mvvm.Windows&version=0.2.0 // Install NuExt.Minimal.Mvvm.Windows as a Cake Tool #tool nuget:?package=NuExt.Minimal.Mvvm.Windows&version=0.2.0
NuExt.Minimal.Mvvm.Windows
NuExt.Minimal.Mvvm.Windows
is an extension for the lightweight MVVM framework NuExt.Minimal.Mvvm. This package is specifically designed to enhance development for WPF applications by providing additional components and utilities that simplify development, reduce routine work, and add functionality to your MVVM applications. A key focus of this package is to offer robust support for asynchronous operations, making it easier to manage complex scenarios involving asynchronous tasks and commands.
Commonly Used Types
Minimal.Mvvm.ModelBase
: Base class for creating bindable models.Minimal.Mvvm.Windows.ControlViewModel
: Base class for control-specific ViewModels and designed for asynchronous disposal.Minimal.Mvvm.Windows.DocumentContentViewModelBase
: Base class for ViewModels that represent document content.Minimal.Mvvm.Windows.WindowViewModel
: Base class for window-specific ViewModels.Minimal.Mvvm.Windows.IAsyncDialogService
: Displays dialog windows asynchronously.Minimal.Mvvm.Windows.IAsyncDocument
: Asynchronous document created withIAsyncDocumentManagerService
.Minimal.Mvvm.Windows.IAsyncDocumentManagerService
: Manages asynchronous documents.Minimal.Mvvm.Windows.InputDialogService
: Shows modal dialogs asynchronously.Minimal.Mvvm.Windows.OpenWindowsService
: Manages open window ViewModels within the application.Minimal.Mvvm.Windows.SettingsService
: Facilitates saving and loading settings.Minimal.Mvvm.Windows.TabbedDocumentService
: Manages tabbed documents within a UI.Minimal.Mvvm.Windows.ViewLocator
: Locates and initializes views based on view models.Minimal.Mvvm.Windows.WindowPlacementService
: Saves and restores window placement between runs.
Recommended Companion Package
For an enhanced development experience, we highly recommend using the NuExt.Minimal.Mvvm.SourceGenerator
package alongside this framework. It provides a source generator that produces boilerplate code for your ViewModels at compile time, significantly reducing the amount of repetitive coding tasks and allowing you to focus more on the application-specific logic.
Installation
You can install NuExt.Minimal.Mvvm.Windows
via NuGet:
dotnet add package NuExt.Minimal.Mvvm.Windows
Or through the Visual Studio package manager:
- Go to
Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution...
. - Search for
NuExt.Minimal.Mvvm.Windows
. - Click "Install".
Usage Examples
For comprehensive examples of how to use the package, refer to the samples directory in this repository and the NuExt.Minimal.Mvvm.MahApps.Metro repository. These samples illustrate best practices for using these extensions.
Contributing
Contributions are welcome! Feel free to submit issues, fork the repository, and send pull requests. Your feedback and suggestions for improvement are highly appreciated.
Acknowledgements
Special thanks to the creators and maintainers of the DevExpress MVVM Framework. The author has been inspired by its advanced features and design philosophy for many years. However, as technology evolves, the DevExpress MVVM Framework has started to resemble more of a legacy framework, falling behind modern asynchronous best practices and contemporary development paradigms. The need for better support for asynchronous programming, greater simplicity, and improved performance led to the creation of these projects.
License
Licensed under the MIT License. See the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0-windows7.0 is compatible. net7.0-windows was computed. net8.0-windows was computed. net8.0-windows7.0 is compatible. net9.0-windows7.0 is compatible. |
.NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 4.6.2
- NuExt.Minimal.Mvvm (>= 0.2.0)
- NuExt.System.Windows (>= 0.2.0)
-
net6.0-windows7.0
- NuExt.Minimal.Mvvm (>= 0.2.0)
- NuExt.System.Windows (>= 0.2.0)
-
net8.0-windows7.0
- NuExt.Minimal.Mvvm (>= 0.2.0)
- NuExt.System.Windows (>= 0.2.0)
-
net9.0-windows7.0
- NuExt.Minimal.Mvvm (>= 0.2.0)
- NuExt.System.Windows (>= 0.2.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on NuExt.Minimal.Mvvm.Windows:
Package | Downloads |
---|---|
NuExt.Minimal.Mvvm.MahApps.Metro
Extensions for the MahApps.Metro toolkit using the Minimal MVVM Framework for streamlined Metro-style WPF app development. Commonly Used Types: Minimal.Mvvm.Windows.DialogCoordinatorService Minimal.Mvvm.Windows.MetroDialogService Minimal.Mvvm.Windows.MetroTabbedDocumentService MahApps.Metro.Controls.Dialogs.MetroDialog |
GitHub repositories
This package is not used by any popular GitHub repositories.