Qhta.MVVM 4.1.0

dotnet add package Qhta.MVVM --version 4.1.0                
NuGet\Install-Package Qhta.MVVM -Version 4.1.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Qhta.MVVM" Version="4.1.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Qhta.MVVM --version 4.1.0                
#r "nuget: Qhta.MVVM, 4.1.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Qhta.MVVM as a Cake Addin
#addin nuget:?package=Qhta.MVVM&version=4.1.0

// Install Qhta.MVVM as a Cake Tool
#tool nuget:?package=Qhta.MVVM&version=4.1.0                

This package implements Model-View-View-Model paradigm with several classes and interfaces that use System.Windows and System.Windows.Input namespaces components from WindowsBase library

Interfaces:

  • IExpandable - interface that defines IsExpanded property.
  • IFilteredCollection - interface for collection that can filter items of other collection.
  • IFilteredCollection<ItemType> - interface for collection that can filter items of other collection of the specific type.
  • ILazyLoad - interface that defines properties and a method for loading object in background thread.
  • IListViewModel - interface for ListViewModel{ItemType}
  • INotifySelectionChanged - interface that declares SelectionChanged event.
  • INumbered - interface for an object that has a <see cref="Number"/> property.
  • IOrientable - interface for ListViewModel to be oriented horizontally or vertically.
  • IRelayCommand - an interface expanding ICommand (from System.Windows.Input) with NotifyCanExecuteChanged method.
  • ISameAs - interface for an object which can be compared to another object without full precision.
  • ISelectable - interface that defines IsSelected property.
  • ISelector - interface for the object that can have a selection.
  • ISequenceable<ItemType> - Interface for a collection that can go to next or previous object.
  • IValidated - an interface that defines IsValid method.
  • IViewModel - an interface expanding INotifyPropertyChanged (from System.ComponentModel) with NotifyPropertyChanged method.
  • IVisible - interface that defines IsVisible property.

ViewModels:

  • ViewModel - base class of view model.
  • ViewModel<ModelType> - ViewModel with a specific model object.
  • VisibleViewModel - ViewModel which implements IVisible, ISelectable, IDetailedRow and IExpandable interfaces.
  • VisibleViewModel<ModelType> - VisibleViewModel which has a model of a specific type.
  • LazyLoadViewModel<ModelType> - abstract LazyLoadViewModel{ModelType} that implements ILazyLoad and IExpandable interfaces.
  • ListViewModel - abstract VisibleViewModel for a list.
  • ListViewModel<ItemType> - ListViewModel with specified item type.

Commands:

  • Command - a class that implements interface ICommand (from System.Windows.Input) using DependencyObject (from System.Windows).
  • Commands - observable collection of Command instances.
  • DispatchedCommand - a command which invokes Dispatcher when NotifyCanExecuteChanged is called.
  • RelayCommand - a command which relays its functionality to other objects by invoking delegates.
  • RelayDispatchedCommand - a dispatched command which relays its functionality to other objects by invoking delegates.

Events:

  • CurrentItemChanged - event raised when a current item of ListViewModel has been changed.
  • SelectionChanged - event raised when a selection of ListViewModel has been changed.
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net6.0-windows7.0 is compatible.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Qhta.MVVM:

Package Downloads
Qhta.WPF.Utils

A package classes (converters) to use in WPF applications.

Qhta.MVVM.DataViewModels

Some data view models: DataListViewModel, DataTreeViewModel, DataSetViewModel.

Qhta.ObservableViewModels

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.1.0 109 8/29/2024
1.0.4 650 7/25/2020
1.0.3 449 6/6/2020
1.0.2 481 5/7/2020
1.0.1 865 10/27/2018