In this WPF dark theme tutorial, I build a full light/dark mode toggle from scratch using ResourceDictionary — no MaterialDesignXAML, no libraries.
Starting from a default white WPF app, I walk through 5 steps that build the complete theming system from the ground up:
✅ Step 1: ResourceDictionary — create a Themes/Dark.xaml with 9 named SolidColorBrush tokens (the WPF equivalent of design tokens)
✅ Step 2: DynamicResource vs StaticResource — the most important distinction in WPF theming, demonstrated live with a broken toggle and a working one
✅ Step 3: Button ControlTemplate — why WPF Button ignores Background by default and how to override it with implicit styles and IsMouseOver triggers
✅ Step 4: Light.xaml + runtime toggle — same x:Key names, different colours, swapped in 3 lines of C# via MergedDictionaries
✅ Step 5: UserControls — NavItem and StatCard with DependencyProperties that respond to the theme toggle automatically
No MaterialDesign. No Bunifu. No NuGet packages. Pure XAML + C#.
All 6 step projects (Step 0–5) are free to download — open each one in Visual Studio and follow along.
WHAT YOU'LL LEARN ──────────────────────────────
• How to build a WPF dark theme without any third-party libraries
• The difference between DynamicResource and StaticResource in WPF
• How to override Button with a ControlTemplate in XAML
• How to create implicit styles that apply to all controls automatically
• How to toggle between light and dark mode at runtime in 3 lines of C#
• How to build WPF UserControls with DependencyProperties
SOURCE CODE ────────────────────────────────────
📁 https://github.com/Ron391/WPF-DarkThe...
── CHAPTERS ───────────────────────────────────────
0:00 Introduction — the toggle reveal and the WPF difference
0:55 Why not MaterialDesignXAML?
2:00 Step 1 — ResourceDictionary and 9 brush tokens
4:30 Step 2 — DynamicResource vs StaticResource
7:00 Step 3 — Button ControlTemplate and implicit styles
10:00 Step 4 — Light.xaml and the runtime toggle
12:30 Step 5 — UserControls with DependencyProperties
15:00 The reveal — dark/light toggle live
16:15 3 Takeaways + what to build next
── PREVIOUS VIDEO ─────────────────────────────────
▶ WinForms UI Redesign — Before & After: • I Redesigned the World's Ugliest WinForms ...
── NEXT VIDEOS ────────────────────────────────────
▶ WPF MVVM Pattern — Build a Real App
▶ WPF Custom Controls from Scratch
── ABOUT VECTOART ─────────────────────────────────
VectoArt is for .NET developers who want to build desktop apps that actually look good. Every video covers UI design, WinForms, WPF, and C# — no design degree required.
#WPF #CSharp #UIDesign
En esta página del sitio puede ver el video en línea WPF Dark Theme Tutorial — ResourceDictionary, Light/Dark Toggle, No Libraries de Duración hora minuto segunda en buena calidad , que subió el usuario VectoArt 01 enero 1970, comparta el enlace con amigos y conocidos, en youtube este video ya ha sido visto 699 veces y le gustó 26 a los espectadores. Disfruta viendo!