About this project

ModernWPF is an independent, community-maintained library that adds Fluent styling and modern, WinUI-inspired controls to Windows Presentation Foundation (WPF) applications. It runs directly on WPF and does not replace the WPF runtime or act as WinUI. What it provides: - Fluent styling for stock WPF controls, with Light, Dark, High Contrast, and compact-resource behavior. - WPF ports of modern controls such as NavigationView, NumberBox, ContentDialog, InfoBar, CommandBarFlyout, and ItemsRepeater. - Application-, window-, and element-level theme APIs. - Modern window chrome, title-bar integration, layout helpers, and resource primitives. - Source-backed compatibility audits plus automated API, resource, theme, accessibility, package, and runtime tests. Relationship to upstream projects: ModernWPF builds directly on dotnet/wpf and preserves WPF behavior. For stock control styling it uses the platform Fluent theme on .NET 10 and a compatible backport on older supported targets. Additional modern controls are ported from microsoft-ui-xaml where WPF has no equivalent, with documented WPF adaptations. The project states it is not affiliated with or endorsed by Microsoft. Project status: the 1.x line is the active preview line, with 1.0.0-preview.1 as the first API/resource audit and migration baseline and a roadmap toward an API-frozen release candidate and stable 1.0.0. The 0.9.x line is frozen and unsupported; no updates or security fixes are planned, and source/binary compatibility with 0.9.x is not promised. A migration guide covers target framework changes, resource entries, renamed APIs, and removal of the MahApps adapter in 1.x. Supported targets: net462 and net8.0-windows7.0 use the ModernWPF Fluent backport; net10.0-windows7.0 uses the official PresentationFramework.Fluent theme. Retired net45, netcoreapp3.0, and net5.0-windows assets are not part of 1.x. Getting started: install an explicit 1.x version (for example, dotnet add package ModernWpfUI --version 1.0.0-rc.1) so NuGet does not select a frozen 0.9.x package. Add ThemeResources and FluentControlsResources to App.xaml, then opt a window into ModernWPF styling with WindowHelper.UseModernWindowStyle and use controls from the ui XAML namespace. Applications needing a staged migration may temporarily keep ThemeResources plus XamlControlsResources. Gallery: ModernWpf.Gallery is the repository's interactive catalog and development sample, demonstrating controls, themes, window chrome, navigation, dialogs, flyouts, and input behavior. It is a project sample, not Microsoft's official WPF or WinUI Gallery. Building requires Windows, the SDK selected by global.json, and the .NET desktop development workload; net462 also needs the .NET Framework 4.6.2 Developer Pack. Solution and test builds should not run in parallel because WPF projects can contend for shared intermediate files. Documentation includes the 1.0 roadmap, release notes for previews and the release candidate, a 0.9.x migration guide, a 1.x public API contract, and a WinUI source parity document. Contributions are directed through Discussions, a structured preview bug form, and Issues, with regression coverage expected for changes. License: MIT. WPF and WinUI source references retain their respective upstream notices and licenses.