A cross-platform .NET UI framework for building desktop, mobile, embedded and WebAssembly apps with C# and XAML.
MahApps/MahApps.Metro
A WPF UI toolkit that restyles standard controls and adds modern window chrome, theming, non-blocking dialogs and navigation controls.
- Stars
- 9,833
- Forks
- 2,422
- Open issues
- 6
- Last commit
- 15 hours ago
What is it?
MahApps.Metro is a UI toolkit for building WPF desktop applications. It restyles the standard WPF controls such as Button, TextBox, DataGrid and TreeView by merging resource dictionaries, so existing XAML keeps working without swapping in new control types.
It also fills gaps in WPF with a custom window class, MetroWindow, that replaces the system title bar with customizable commands, glow borders, overlays and flyouts. Themes combine a Light or Dark base with an accent colour, can be switched at runtime, and can follow the Windows accent and system light/dark settings.
The toolkit includes dialogs shown as overlays inside a window, a HamburgerMenu and SplitView for side-bar navigation, and input controls such as ColorPicker, DateTimePicker and NumericUpDown. Helper attached properties like TextBoxHelper.Watermark add behaviour to stock controls without subclassing.
Key features
- 01Restyles standard WPF controls in place by merging resource dictionaries.
- 02MetroWindow provides custom title-bar commands, glow borders and flyouts.
- 03Light and Dark base themes with accent colours, switchable at runtime.
- 04Awaitable dialogs displayed as overlays inside the window.
- 05Attached-property helpers such as watermarks and clear buttons for stock controls.
- 06Supports .NET Framework 4.6.2 and later, plus .NET 6 and .NET 8 on Windows.
Use cases
- Modernising the look of an existing WPF line-of-business application without rewriting its XAML.
- Building a side-bar navigation shell with HamburgerMenu and page-based navigation.
- Adding overlay dialogs and custom title-bar commands to a WPF main window.
- Keeping a consistent light or dark theme that follows the Windows system setting.
Quick start
- 1
Get the MahApps.Metro package from its NuGet page
- 2
Follow the Quick Start guide in the documentation
Things to know
- Works only with WPF on Windows.
- Version 3.0 is still a release candidate on NuGet.
- Version 2.4 and version 3.0 target different .NET runtimes, so check which one fits your project.
Topics
FAQ
- What is MahApps.Metro?
- A WPF UI toolkit that restyles standard controls and adds modern window chrome, theming, non-blocking dialogs and navigation controls. MahApps.Metro is a UI toolkit for building WPF desktop applications. It restyles the standard WPF controls such as Button, TextBox, DataGrid and TreeView by merging resource dictionaries, so existing XAML keeps working without swapping in new control types.
- Is MahApps.Metro free to use? What license does it have?
- MahApps.Metro is open source under the MIT license. Check the license terms before using it in commercial products.
- Is MahApps.Metro still maintained?
- Actively maintained. The last commit to MahApps.Metro was on Oct 21, 2026.
- What can I use MahApps.Metro for?
- Modernising the look of an existing WPF line-of-business application without rewriting its XAML. Building a side-bar navigation shell with HamburgerMenu and page-based navigation. Adding overlay dialogs and custom title-bar commands to a WPF main window. Keeping a consistent light or dark theme that follows the Windows system setting.
- How do I install MahApps.Metro?
- Get the MahApps.Metro package from its NuGet page Follow the Quick Start guide in the documentation
- Where can I get MahApps.Metro?
- The source code and installation instructions are on GitHub: https://github.com/MahApps/MahApps.Metro
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
WinUI is Microsoft's UI layer of modern controls and styles for building Windows desktop apps, with WinUI 3 shipping in the Windows App SDK.
A cross-platform GUI toolkit and app API for Go, designed to build desktop and mobile apps from a single codebase.
Free, open-source Windows optimization tool with 42 tweaks, a settings panel, and built-in tools for startup, scheduled tasks, and cleanup.
Windows OCR utility that captures text from screen regions, images, PDFs and files, runs locally, and copies or routes the result.
A minimalist Windows desktop sticky-note app with to-do and Markdown note papers that live directly on the desktop, built natively in WPF.