I suggest you ...

WinForms Designer DPI Lock

Provide an option to lock the WinForms Designer to work in a fixed DPI, such as 96 DPI. When opening a project in Visual Studio on different computers (with different resolutions and display scaling) the WinForms designer causes the forms to resize and otherwise behave badly. Sizes and positions are also inconsistent between different resolution/scale combinations. For example, a form of size 513x544 (on a 96 DPI 100% scale display) will show as 1040x1063 opened on a display that uses 200% scaling. I have found numerous posts around the Internet about this problem and the accepted solution is to always design forms at 96 DPI. However when running on a 2560x1600 display for example, setting the scaling to 100% (96 DPI) causes everything to be way too small to see or read. Why can't the WinForms designer itself just lock to 96 DPI for example so that forms will always show the same pixel size and so forth regardless of the display settings of the computer? Application scaling (i.e. AutoScaleMode) should only kick in at runtime, not at design time. Design time should be fixed for consistent behaviour.

359 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Anonymous shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

    11 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      Submitting...
      • Jan de Vaan commented  ·   ·  Flag as inappropriate

        This issue is keeping my development team from using higher DPI monitors. This in turn causes that we don't see DPI/scaling in the application. Which means that we have more late-discovered high DPI bugs in our apps than necessary.

      • denny commented  ·   ·  Flag as inappropriate

        We can disable Visual Studio DPI by regedit. but all VS2017 UI and fonts will not support high DPI. Can we provide a checkbox to set winform design area DPI enable or disable, not all VS2017 UI.

      • Anonymous commented  ·   ·  Flag as inappropriate

        Many thanks, I've tried my application with windows 7 and 10 and it works great.

        Thank you very much.

      • Anonymous commented  ·   ·  Flag as inappropriate

        That proposed solution is a bad idea. The designer needs to be locked down to 96 DPI.

      • Nate commented  ·   ·  Flag as inappropriate

        That's an alright workaround but not a solution in my opinion. Some things (such as Cloud Explorer) don't scale properly when you disable that setting. Per-form designer locking would be a much better solution.

      • code4ward commented  ·   ·  Flag as inappropriate

        Can this be fixed please. Impossible to work with my new Surface Pro 4. Just tried VS 2017 RC and the issue is still there...

      • Anonymous commented  ·   ·  Flag as inappropriate

        We've been keeping a low res laptops for WinForms work as well. Unfortunately, all our company's products are in WinForms and our laptops are going on for 5+ years old now. Microsoft, please lock the WinForms designer DPI in Visual Studio for high res displays.

      • Robert Lounsbury commented  ·   ·  Flag as inappropriate

        Agree that a fix is needed! VS2015 on a hi-res display completely mangles the WinForm design, making it painful or neearly impossible to maintain existing WinForm apps.

        My solution for the time being will be to keep a separate lower-res laptop specifically for maintaining WinForm apps.

      • Nate commented  ·   ·  Flag as inappropriate

        Oh man... I just got a Surface Book and this feature is a must! I'm wondering if I can even keep this thing just based on how bad the WinForms designer experience is. Plus when I debug everything is at 100%. No consistency. Is there any workaround for this or are Winforms developers just out of luck on this?

      Feedback and Knowledge Base