https://github.com/oriches/simple.wpf.template
template for creating an MVVM based WPF application using Autofac, NLog & Rx
https://github.com/oriches/simple.wpf.template
csharp dotnet-framework mvvm reactive-programming rx windows-ui wpf
Last synced: 1 day ago
JSON representation
template for creating an MVVM based WPF application using Autofac, NLog & Rx
- Host: GitHub
- URL: https://github.com/oriches/simple.wpf.template
- Owner: oriches
- Created: 2014-09-22T15:00:51.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2022-06-29T16:19:57.000Z (almost 3 years ago)
- Last Synced: 2025-04-21T20:46:53.446Z (2 months ago)
- Topics: csharp, dotnet-framework, mvvm, reactive-programming, rx, windows-ui, wpf
- Language: C#
- Homepage:
- Size: 9.7 MB
- Stars: 44
- Watchers: 4
- Forks: 24
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Simple.Wpf.Template
===================[](https://ci.appveyor.com/project/oriches/simple-wpf-template/branch/master)
This is 'my' canonical example for a WPF solution based on an MMVM approach using IoC, logging, and asynchronous invocations. All external
Built with .NET 6.0 and all the lovely syntatic-sugar available!
**Thrid party libraries are resolved using NuGet.**
The idea is to prevent me from re-creating the scaffolding\infrastructure for any future WPF apps, the following are included:
**MVVM** - _implmented as ViewModel first approach using strongly typed XAML DataTemplates,_
**IoC** - _implmented using Autofac, all services and key (major) ViewModels are resolved via the IoC container,_
**Logging** - _implemented using NLog, writes to file currently in the '%TEMP_FOLDER%\Simple.Wpf.Template' directory,_
**Async Support** - _implemented using Reactive Extensions & TPL (async / await),_
**Modules & Module Loader** - _allows clean setup & configuration, see App.cs,_
**Duration** - _a service for measuring the time for a block of code (Debug mode only),_
**Gestures** - _a service for changing the system gestures (mouse) during the application, designed to be used with MVVM,_
**Event Aggregator** - _a service for publishing / subscribing to application events using Rx syntax,_
**Notifications** - _a service for showing Windows toast notifications,_