Suggestion for WinForms Interop

Posted 10 years ago by Avatar Mike Strobel - Atlanta, GA
Great work so far, guys. The docking feature set is by far the most impressive out there. I have but one suggestion so far. You'll notice that if a tool window contains a hosted Windows Forms component, then that component will be rendered on top of any auto-hidden tool windows that intersect it when opened. This is unavoidable when rendering the elements in the same window, even when using adorner layers, due to the nature of the WinForms/WPF interop. Might I suggest an (optional) alternate rendering mode in which auto-hidden tool windows open in either a popup or a layered window? Either of these would work in theory, though I suspect you would run into several input and focus related issues with popups. Doing this right will likely require some nasty Win32 interop, but I'm sure your developers are up to it :).


Comments (3)

Posted 10 years ago by Actipro Software Support - Cleveland, OH, USA
Very good point Mike! Thanks for the testimonial by the way too. :)

In the interests of getting v4.0 out, I'm not sure we'll be able to get a solution for this in the initial release but I've written down a note to perhaps make a QuickStart to test it out for follow-up changes later. I can definitely see a lot of people needing support for interop as they transition from WinForms to WPF.

Actipro Software Support
Posted 10 years ago by Mike Strobel - Atlanta, GA
The testimonial was well earned :).

I can certainly understand your desire to get v4.0 shipped, and since my proposal would be a major change with possible regressions, it's certainly reasonable to save it for a service release. I would do the same thing. The good news is that the testing I've done with WinForms hosting hasn't turned up any other issues--the Ctrl+Tab navigation overlay and docking hints were correctly rendered above the hosted WinForms elements. Living without auto-hiding in the initial release is an acceptable sacrifice considering how well everything else works.

I didn't bother to test if WinForms elements are displayed correctly in hosted rafting windows, but I suspect they would not be. This isn't a major issue considering that the hosted rafting windows are only strictly required for XBAPs, and as far as I know, WinForms interop won't work in an XBAP because it requires full trust. Even so, your documentation should note that the use of hosted rafting windows with WinForms interop is not supported (unless of course I'm wrong).

Posted 7 years ago by Actipro Software Support - Cleveland, OH, USA
Hi Mike,

Just FYI, we've added support for Interop content in auto-hidden tool windows, which will be included in the next maintenance release.

If you'd like access to a preview build to help us test prior to the next maintenance release, please email support with your request.

Actipro Software Support
Information The latest build of this product (2017.2 build 0665) was released 1 month ago, which was after the last post in this thread.

Add a Comment

Please log in to a validated account to post comments.