-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Open
Labels
Description
In modern enterprise environments, it's common to use laptops with a default display scaling of 150%, while external monitors remain at 100%. This mixed-DPI setup—despite having the same resolution—causes WPF applications to behave inconsistently:
- UI elements are resized unexpectedly
- Text becomes oversized or blurry
- Layouts break or overflow
- Critical functionality becomes inaccessible
This severely impacts usability, maintainability, and business productivity.
Request:
Please add a manifest setting or API that allows developers to force WPF applications to render at 100% scale, regardless of the system's DPI settings or PerMonitorV2 behavior.
Suggested options:
- Manifest tag:
<dpiAwareness>fixed96dpi</dpiAwareness>
- API call:
SetProcessDpiFixed96(); // Forces 96 DPI rendering
- Windows setting:
“Allow apps to ignore display scaling” toggle for advanced users
Why this matters:
- Current DPI Awareness modes (
system
,perMonitor
,perMonitorV2
) do not allow full control over rendering scale - Even with
SetProcessDpiAwareness()
orSetProcessDPIAware()
, Windows 11 still enforces DPI scaling when dragging windows between monitors - Developers have no reliable way to ensure consistent UI rendering across mixed-DPI environments
Impact:
This issue affects thousands of enterprise applications and users globally. It causes visual inconsistencies, functional errors, and user frustration—ultimately hindering productivity and contributing to economic inefficiency.