Opening maximized DocumentWindows in StandardMdiHost

Docking/MDI for WPF Forum

Posted 2 years ago by Christian Moritz - Stieger Software AG
Version: 17.1.0651
Environment: Windows 10 (64-bit)
Avatar

Hello

Unfortunately your ComboBox only allows ".NET 4.5", nothing higher. We are actually using .NET 4.6.2 and will soon switch to .NET 4.7.

 

When one MDI-DocumentWindow in a StandardMdiHost is maximized, the Property AreWindowsMaximized is automatically set to true bei the Actipro-framework. That causes several problems. Maybe they are by design, but we get some really unpleasant visual effects. I hope someone can help me turn off this undesired behavior.

 

Problem number 1:

  • The user opens several MDI-DocumentWindows in a StandardMdiHost
  • The user maximizes one of these windows.
  • Then the user closes that window.

=> The closed window disappear, the other windows are shown in their non-maximized size and location and the next window is maximized.

What we would prefer:

  • When the window is closed the other windows are already maximized and we don't get the impression that they jump around.
  • A possible, if less desirable, alternative would be that the other windows remain in their previous state and are not maximized.

 

Problem number 2:

  • The user opens a MDI-DocumentWindow in a StandardMdiHost.
  • The user maximizes that window (thus setting AreWindowsMaximized to true) and closes it again.
  • The user opens another MDI-DocumentWindow.

=> The new window is first drawn with the size and location it would get if it wasn't maximized and then maximized.

What we would prefer:

  • When the window is opened it is maximized and does not jump from its previous size and location to the maximized state.

 

Does anyone know of a way to calm down these windows, so they don't jump around?

Or can this be fixed in the framework?

Comments (7)

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

Hi Christian,

Thanks for reporting these issues.  We've made code updates for the next version (2017.2) to help remove the flicker when changing between maximized primary documents.  That should help with both the stated problems.


Actipro Software Support

Posted 2 years ago by Christian Moritz - Stieger Software AG
Avatar

Thank you for the quick answer. I'll wait for release 2017.2 then and let you know if that fixes the problems.

Posted 2 years ago by Christian Moritz - Stieger Software AG
Avatar

Unfortunately the problems have not been fixed with version 2017.2.

Problem number 1 has not changed at all.

 

Problem number 2 seems to have been fixed partially.

When I open a window, maximize it and then open other windows they are correctly opened maximized.

But when I open a window, maximize it, close it and open another window it now is even worse.

The window opened then looks like a normal, not maximized, window. It doesn't fill the entire container. But it shows the icon indicating it is maximized and it can't be moved or resized. Only after restoring it to normal state and setting it to maximized again it is truly maximized.

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

Hi Christian,

We tested with our "Standard MDI Only" QuickStart and used your original repro steps.  

1) For this we still only maximize the window currently being displayed, since to arrange all would take more cycles when resizing the main window and could lead to performance degradation if there are a lot of element-complex documents.  But for 2017.2 we adjusted the order of how we do certain things and made another tweak to help prevent the flicker.  At least in our sample, we no longer see it. 

If you are seeing differently, please make a new simple sample project that shows it happening and email that to our support address.  Remove any bin/obj folders from what you send and rename the .zip file extension so it doesn't get spam blocked.  Then we can take a look with that.

2) Thanks for reporting this new bug.  We found the problem and fixed it just now.  If you'd like a preview of the next build containing the fix to test with, please write our support address and we'll send you a link.


Actipro Software Support

Posted 2 years ago by Christian Moritz - Stieger Software AG
Avatar

Hello,

I was quite busy so I didn't get to looking into it further. I now managed to do so and found that you are right. In your QuickStart code it works. In our code it doesn't.

I also found the reason:

Unlike your QuickStart-Windows ours contain many controls (big visual trees) and have ViewModels with data behind them. Our Product Owner didn't want to wait for the one or two seconds it took for a window to disappear after clicking the Close-Button. So we decided to first hide the windows, then dispose of all the elements in the visual tree asynchronously, so the program remains responsive, and finally get rid of the window itself.

It seems that your maximization mechanism reacts to the final closing of the window and not when it is hidden. But actually when one window is hidden the other windows should be correctly sized. Perhaps you can fix that as well.

 

As for the new bug, great that you where able to fix it. For now we decided to skip the current version and wait for the fixed version. Can you tell me when that will be available?

 

Thank you

[Modified 2 years ago]

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

Hi Christian,

We'll be happy to look into it further if you can make a new simple sample project that shows the issue and email that to our support address.  Please reference this thread in your email, remove the bin/obj folders from what you send, and rename the .zip file extension so it doesn't get spam blocked.

If you can give us a repro project sample, we can use that to test and see if there's anything we can change in our logic to help.  It might be that some layout is occurring before a binding kicks in, etc.

We hope to launch the new build within a week or two.


Actipro Software Support

Posted 2 years ago by Christian Moritz - Stieger Software AG
Avatar

I tried creating a very simple sample project. Unfortunately that didn't show the bug. I created a backlog item so someone will examine this further and either send you a sample project or find a bug on our side and fix that.

The latest build of this product (v2018.1 build 0675) 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.