Je viens de passer du temps avec Microsoft Template Studio qui installe un Template de modern UI autour de MahApps.Metro pour WPF avec plein d'autres fonctionnalités.
Alors existe t-il d'autres templates de modern UI pour WPF ?
WPF modern UI Frounisseurs
Dans WPF, comme fournisseurs d'UI moderne et composants graphiques, on retrouve classiquement :
...
WPF modern UI Gratuits
On va essayer de trouver quelques bons projets de WPF Modern UI. Pour l'instant pas de classement mais une découverte rapide des différentes solutions qui nous sont proposées.
Kiranna ModernWPF
Kinnara/ModernWpf est un travail très intéressant et très important, autour des pacakges UI dédiés à WPF. Il part du framework de base Microsoft.WindowsDesktop.App.WPF pour réaliser une application complète de contrôles utilisateur AutomationPeer.
Un de ses projets utilise (est dépendant de) le package MahApps.Metro mais pas les autres.
Une série de Samples démontrent l'utilisation de Fluent.Ribbon, Dragablz, FluentWPF, MahApps.Metro.
\\Visual Studio 2022\Samples\Kinnara-ModernWPF\ModernWPF Net6-7\ModernWPF\ModernWpf.SampleApp\ModernWpf.SampleApp.csproj
Voici un exemple de la Gallery :
WPF UI - ModernWpf.SampleApp |
Intégration du Package MahMetro :
\\Visual Studio 2022\Samples\Kinnara-ModernWPF\ModernWPF Net6-7\ModernWPF\samples\MahAppsSample\MahAppsSample.csproj
ModernWPF- MahAppsSample |
Une véritable mine d'or pour ceux qui souhaitent maîtriser WPF UI la plus part des ressources viennent de MahApps mais pas seulement.
If you need the ModernWpf from Yimeng Wu for .NET 6.0 or .NET 7.0 It's here in Discussion Tab :
GitHub - Kinnara/ModernWpf - Discussion #513 Net 6 and Net 7
Un travail très intéressant d'évolution de la solution vers .NET 6.0 et .NET 7.0 qui donne une idée du travail à effectuer pour migrer une application depuis les anciens frameworks vers .NET 6.0.
MahApps.Metro
C'est le projet utilisé par Microsoft TemplateStudio pour WPF et d'autres ...
Github - MahApps/MahApps.Metro
Pour l'instant, je n'arrive pas encore à exécuter ce projet sur ma plateforme de développement à cause d'une référence au framework 4.7 ... que je ne souhaite pas installer, bref... je prends le code de release :
https://github.com/MahApps/MahApps.Metro/releases 2.4.9, je supprime "net47" dans les propriétés des projets et ça fonctionne :
MahMapps.Metro elegant WPF UI |
Vous pouvez trouver la structure des NuGets MahApps.Metro dans le projet :
https://github.com/MahApps/MahApps.Metro/wiki/Visual-Studio-Templates
Pour démarrer rapidement avec MahApps.Metro c'est ici :
MahApps - Guides Quick-start - Installation
Mais alors vous démarrez tout en bas, avec un NutGet et le Guide pour créer votre première page MetroWindow :
Install Nuget MahApps.Metro for WPF solution |
Mais croyez moi il du chemin à faire pour obtenir une application WPF digne de ce nom.
Fluent.Ribbon
C'est le projet de Base a utiliser, si vous souhaitez développer une application WPF autour d'un "Ribbon" un Ribbon est bien plus qu'un ruban, c'est un menu Windows Office Like c'est donc un menu extrêmement efficace pour lancer tout un tas de commandes depuis ce Ribbon.
Github -Fluent.Ribbon.Showcase
Voici l'interface UI du projet Fluent.Ribbon exécutée par Visual Studio 2022 Community :
Fluent.Ribbon WPF UI |
Le problème étant que ce Ribbon est très "Windows Like" aujourd'hui on préférera des menus plus simples.
Mais ce projet est une mine d'or pour les développeurs WPF car il met en oeuvre un nombre incalculable de techniques pour développer une belle UI pratique.
WPF UI Fluent Modern Lepo
C'est dans la même vaine, un projet très complet avec Extension, Template d'application WPF.
Open source dans le GitHub, respect des licences :
https://github.com/lepoco/wpfui/tree/main/src/Wpf.Ui
Quel model MvvM ? WPF UI Lepoco n'utilise pas Prism c'est le CommunityToolkit.Mvvm
De très intéressants Scripts dans le répertoire :
https://github.com/lepoco/wpfui/tree/main/scripts
Si vous souhaitez exécuter la Solution Wpf.Ui.Demo avec Visual Studio 2022 et .NET 6.0, il vous suffit de supprimer les références aux frameworks ;netcoreapp3.1;net48;net472;net462 :
Dans le fichier : /Wpf.Ui/Wpf.Ui.csproj :
<TargetFrameworks>net7.0-windows;net6.0-windows;netcoreapp3.1;net48;net472;net462</TargetFrameworks>
Exécution du projet Wpf.Ui.Demo.Mvvm.csproj :
Modern UI WPF Lepoco - Wpf.Ui.Demo.sln |
Exécution du projet Wpf.Ui.Gallery.sln :
ModernWPF UI Leco.co Gallery |
C'est un projet extrêmement impressionnant avec une quantité de codes source gigantesque pour faire fonctionner tout cela.
J'ai installé l'extension WPF UI :
https://marketplace.visualstudio.com/items?itemName=lepo.wpf-ui
Dans Visual Studio 2022 :
WPF UI lepo.co |
C'est vraiment très complet, voici la structure du Template d'Application :
WPF UI Lepo.co |
On a vraiment un très beau et très complets Template d'application WPF.
Adonis UI
Adonis UI/Lightweight UI toolkit for WPF
Semble prometteur tout en bas de la page une Demo à télécharger.
To Be Continued...
WPF Modern UI - Conclusion
Me voilà avec des tonne de code sources d'exemples pour créer mon application WPF.
Je vais continuer de cherche d'autres exemples de Modern UI Template mais je peux déjà dire que j'ai atteins mon objectif, consolider mes connaissances en développement d'applications WPF modernes. Il y a du chemin de parcouru par les communautés ... depuis silverlight ;-))
Je vais également étudier de plus prêt tout le code fournit avec ces exemples de Modern UI for WPF pour en décrire la structure ou l'architecture Navigation, Configuration, MvvM, etc.
Aucun commentaire:
Enregistrer un commentaire
Pour plus d'interactivité, n'hésitez pas à laisser votre commentaire.