How To Build Modular WPF Applications With a Plugin Architecture

preview_player
Показать описание
WPF is a powerful user interface framework for CSharp, but I hate some of it.

Is hate too strong of a word? Probably.

But in the many years I spent building desktop applications in WPF, I found that I would be fighting against a lot of the framework to make things happen.

However, two things that I don't compromise on are:
- Dependency Injection
- Plugins

So we're going to see how we can build a plugin-based WPF application and set you on course for using a plugin architecture in CSharp!

----
🔑 Membership & Subscriptions:

🧠 Courses:

🗣️ Social Media & Links:

❤️ Affiliations & Products/Services That I Love:
----

#dotnet #csharp #wpf #frontend
Рекомендации по теме
Комментарии
Автор

💡 Learn how to program in C#:
🧠Deep dive on C#:
🎁Zero to Hero C# Bundle:
💪 Skill up your refactoring:
✉ Subscribe to my free software engineering newsletter:

DevLeader
Автор

It is quite fancy when you illustrate the usage of some cool syntax and nugget packages, because you have delved into those and always explain the simplest way in a special aspect

liangbinyu
Автор

Maybe shrink your avatar window and move it further to right corner..it's obscuring some of the code.

pkop
Автор

Could the core app auto-update a plug-in at runtime?

bradgreen
Автор

If I have another class library with Pages and I would like to register them as transient, how should I go about it? Is it even possible with this approach?

stars
Автор

How you should make a loading splash screen? I know there is a Main method inside the App class. Is it a good idea to move that to a separate class and there create a System.Windows.Window without the System.Windows.Application and use that to splash screen?

JoeXhungary
Автор

Could you please tell me how to architect my WPF application ? I am new to WPF and I would like to use clean architecture with WPF which will consume an API.

guhansrinivasan
Автор

An easy way to not have to do the copying is just set the output directory in the projects to a common location.

HarleyPebley