.NET MAUI promises a single codebase across platforms. On Android, iOS, and macOS, it largely delivers. On Windows, where MAUI sits on top of WinUI3, the story is different. There are real, documented bugs at the WinUI3 boundary that Microsoft has not fixed — and some that have been open for years. If you are building a desktop MAUI app on Windows, you have almost certainly hit at least one of them.
HopDev.Maui.Controls exists to fix these problems. It is a focused, open-source NuGet package that addresses the specific platform bugs and missing features that make Windows MAUI desktop apps feel unfinished. No workarounds. No hacks pasted from GitHub issues. Clean, tested fixes you install once.
What It Fixes
DPI and Scaling Awareness. WinUI3 has long-standing issues with DPI scaling in MAUI. Moving a window between monitors with different scaling factors can produce incorrect layout, blurry rendering, or controls that do not resize properly. HopDev.Maui.Controls includes a WindowsScaleService that hooks directly into the Win32 DPI change notifications. It detects scale changes in real time, exposes the current scale factor, and fires events your app can respond to. Your layouts stay sharp on every monitor.
Scrollbar Width. The default WinUI3 scrollbars are narrow — too narrow for many desktop users, especially on high-DPI displays or in data-heavy applications. The SmartScrollPanel control provides configurable scrollbar width that you set in XAML. It also exposes scroll position events so your app can respond to user scrolling with precision.
Borderless Window Support. Building a modern, chromeless desktop application in MAUI on Windows is surprisingly difficult. The built-in title bar does not support full customization, and removing it introduces problems with window dragging, minimize/maximize behavior, and Snap Layouts. HopDev.Maui.Controls provides BorderlessWindowExtensions and a TitleBar control that handle all of this correctly. You get a fully custom title bar with proper window chrome behavior, Snap Layout support, and drag regions — all working the way a Windows desktop user expects.
Corner Resize Grip. When you go borderless, you lose the native window resize affordance in the bottom-right corner. The ResizeGrip control adds it back — a small, styled grip that lets users resize the window naturally. It respects DPI scaling and works correctly with the borderless window extensions.
Integration
Installation is one NuGet package and one line in your MauiProgram.cs:
dotnet add package HopDev.Maui.Controlsbuilder.Services.AddHopDevControls();That single call registers all platform services via dependency injection. On Windows, you get the real implementations. On other platforms, safe no-op stubs are registered automatically so your code compiles and runs everywhere without conditional logic.
For AI Agents and Developers
If you are using an AI assistant to help integrate this library, point it at the repository:
https://github.com/str37/HopDev.Maui.ControlsThe README contains complete integration instructions, service descriptions, XAML examples, and the app manifest configuration needed for proper DPI awareness. It is written specifically to be consumed by both human developers and AI agents. Give your AI the README and it will know how to wire everything up.
Why This Matters
Every .NET MAUI developer building for Windows desktop eventually discovers these problems. The typical path is hours of searching GitHub issues, copying P/Invoke snippets from Stack Overflow, and hoping the workaround does not break on the next MAUI update. HopDev.Maui.Controls packages those fixes into a maintained, tested library so you can focus on your application instead of fighting the platform.
The library is open source, available on NuGet, and free to use. If WinUI3 is breaking your MAUI desktop app, this is the fix.