Bug Report T308094
Visible to All Users

Application freezes when the total width of group items is greater than the group's width and MinWidth is set for items

created 9 years ago

It is highly encouraged that you work on this ticket with Visual Studio 2015 and with the Diagnostic Tools pane pinned where you can watch it while diagnosing.

Restoring a DockLayoutManager layout where the MinWidth property is set on LayoutControlItems such that there is insufficient horizontal space for the required LayoutControlItems to display, the application will lock.  Based on my system setup it appears that the Dispatcher is pegging its hosting logical processor during this scenario.

In the attached sample the Window width is set to 800 and the various LayoutControlItems MinWidths will exceed 800.  Upon launching the app it is unresponsive. Also notice the Diagnostic Tools pane shows a marked increase for CPU usage such that the percentage likely indicates the thread is very busy hogging a logical processor.

Let's move to a slightly different scenario and remove the Window's Width attribute and set the WindowState to Maximized. Now when launching the app it is responsive while maximized (1920x1080) with normal CPU utilization. Now restore the window state with the control box and resize the window's width until you see the Diagnostic Tools again show CPU utilization go up and the app becomes unresponsive.  While following this procedure on my machine it consistently causes Windows to become unresponsive and I have to Ctrl+Alt+Delete to end the vshost task.

If you comment out the LayoutControlItem's Style in the MainWindow's resources you'll see the issue mitigated and you can resize the window down without this issue.

Full disclosure: Our real application also has another symptom which I am not able to reproduce with the sample, infinite garbage collections.  In the Diagnostic Tools you can see the yellow indicator for a GC occurring continually multiple times per second, ad infinitum.  The app still locks but it has the recursive GC issue in conjunction with the app locking.  I discovered this issue during a live demonstration in front of hundreds of our customers at a conference.

Comments (1)
DevExpress Support Team 9 years ago

    Hi Adam,

    Many thanks for the detailed description and providing the sample. I have reproduced this issue on my side. It seems to be related to our mechanism of resizing group child elements. I will inform our developers about this specific issue so that they can research it thoroughly. We will let you know once we find a solution.

    Answers approved by DevExpress Support

    created 9 years ago

    We have fixed the issue described in this ticket and will include the fix in our next maintenance update. To apply this solution before the official update, request a hotfix by clicking the corresponding link for product versions you require.

    Note: Hotfixes may be unavailable for beta versions and updates that are about to be released.

      Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

      Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.