As mentioned in this previous post, we've been looking for ideas to further improve our WPF Docking/MDI product, which already is the market leader for docking tool window and MDI functionality. We've committed to working on a complete internal restructuring of the product that we will call Docking/MDI vNext. We're doing our best to keep the same general API surface, while providing even more advanced features in every area of the product. We've collected suggestions from our customers over the past several years and are working to meet them as best we can with Docking/MDI vNext.
The past several days, we have been refining standard (windowed) MDI and adding several features. In today's blog post, I'd like to show a new feature coming to standard MDI, which is the ability to resize to content when first displayed.
Feature Description
There is a new option on the DockingWindow class that can be set to hint that when the docking window opens in standard MDI, it will automatically size-to-content. In this example, a Document1.txt docking window has a simple TextBox in it and the special size-to-content mode activated (which is off by default):
When opened in standard MDI, the window sizes to content and appears in the workspace area. Now if we manually execute the Cascade method, or if we would have originally kept the size-to-content option off, the docking window will look like this:
In this case, it is using a standardized formula for setting the width and height.
Summary
The ability to automatically resize a standard MDI docking window on load will be delivered in vNext. This is another user-requested feature.
Docking/MDI vNext is currently still in mid-development stages but is progressing very well. Please contact us via email if you are an existing customer and would like to sign up as a beta tester for vNext. If you have any other suggestions for improving Docking/MDI, now is the time to get them in. We'll post more updates on our vNext improvements soon.
In the meantime, please download our current Docking/MDI control product and give it a spin.