High DPI issue with auto-hidden docking windows in WinForms interop scenario

Docking/MDI for WPF Forum

Posted 4 years ago by Tobias Lingemann - Software Devolpment Engineer, Vector Informatik GmbH
Version: 19.1.0687
Platform: .NET 4.7
Environment: Windows 10 (64-bit)
Avatar

Hi,

we upgraded from version 684 to 687 and just noticed an issue with auto-hidden docking windows. As soon as more than 100% DPI are used, the hidden windows are opened in the wrong place. We suspect the issue is introduced with a bugfix that was released with the version 686.

This problem doesn't occur in the demo application, thus I suspect this is caused by the WinForms interop scenario. In our case the main window and docking windows are WPF, while most of the controls are WinForms. Therefore we wrap the content object with an WindowsFormsHost and enable the InteropFocusTracking property.

We also reproduced the same behavior with a more recent version (21.1.0). Is there any quick workaround for this issue?

Best regards,
Tobias


Best regards, Tobias Lingemann.

Comments (2)

Posted 4 years ago by Tobias Lingemann - Software Devolpment Engineer, Vector Informatik GmbH
Avatar

Okay, I think I found the solution. We are still using the old approach for enabling high DPI support. If we enable PerMonitorV2 as described here, the issue is resolved. However this causes other scaling issues. But those are not caused by your component, so you are out of the loop ;)


Best regards, Tobias Lingemann.

Posted 4 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hi Tobias,

Yes, since you mentioned the problem didn't show up in our sample project, I was going to suggest moving to per-monitor high DPI support.  In one of the v19.1 builds, we did work on improving support for per-monitor high DPI, which apps should move to at this point.


Actipro Software Support

The latest build of this product (v24.1.3) was released 1 month ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.