https://github.com/codingseb/mvvm
Some useful stuff for better Mvvm in WPF
https://github.com/codingseb/mvvm
mvvm utils wpf
Last synced: 4 months ago
JSON representation
Some useful stuff for better Mvvm in WPF
- Host: GitHub
- URL: https://github.com/codingseb/mvvm
- Owner: codingseb
- License: mit
- Created: 2019-11-27T15:55:10.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-03-23T06:53:38.000Z (almost 4 years ago)
- Last Synced: 2025-07-22T06:35:40.103Z (5 months ago)
- Topics: mvvm, utils, wpf
- Language: C#
- Homepage:
- Size: 229 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Mvvm
[](https://www.nuget.org/packages/CodingSeb.Mvvm/)
Some useful stuff for better Mvvm in WPF
## Features
* `XCommand` (To bind between Events, Commands, Methods and Property for CanExecute) with smart refresh of the CanExecute (Have some code evaluation features similar to Eval).
* `Eval` Binding with Code Evaluation (Avalonia UI Style and more)
* On DataContext (Properties and methods directly available)
* ElementName `#Name.Something`
* RelativeSource `$self`, `$parent` (LogicalTree), `$$parent` (VisualTree), `$parent[TypeName]`, `$parent[3]`, `$parent[TypeName,2]`
* StaticResource `@ResourceKey`
* `XMultiBinding` for nesting `MultiBinding`, `Binding`, `Eval` and other markups. You can use at each level `IMultiValueConverter`, `IValueConveter` ([Work very well with CodingSeb.Converters](https://github.com/codingseb/Converters))
* `IRelayCommand` (That inherit from ICommand) to call RaiseCanExecuteChanged() from anywhere
* `RelayCommand`
* `RelayCommand`
* Some extensions methods to navigate in both VisualTree and LogicalTree easily from C#
* `NotifyPropertyChangedBaseClass` the class to inherit that implementing `INotifyPropertyChanged` and a `public virtual void NotifyPropertyChanged([CallerMemberName] string propertyName = "")`
[Code Evaluation stuff use CodingSeb.ExpressionEvaluator](https://github.com/codingseb/ExpressionEvaluator)
*You can also use [PropertyChanged.Fody](https://github.com/Fody/PropertyChanged) and/or [ReactiveUI.Fody](https://www.reactiveui.net/docs/handbook/view-models/boilerplate-code) to simplify more your Mvvm code*