Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
820
UltraCombo 9.1 bound to collection hangs second time I open form
posted

I have 5 ultra combos on the form bound to object collections that are initialized before the form is open and remain after the form is closed.

The first 3 work ok, but if I bind the last two, the form will hang the second time I open it.  I think it's something specific to what I am binding to but I can't figure out what.  If I change these two items to bind to the regular .net combo, it all works fine.

When it hangs,  If I try to break into the debugger, I just get:

 [In a sleep, wait, or join] 
> mscorlib.dll!System.Threading.WaitHandle.WaitAny(System.Threading.WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext) + 0x8f bytes 
  System.dll!System.Net.TimerThread.ThreadProc() + 0x2f9 bytes 
  mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) + 0x66 bytes 
  mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x6f bytes 
  mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x44 bytes

  • 469350
    Suggested Answer
    Offline posted

    You might want to check out the WinGrid Performance Guide and take a look at the section on recursive data sources and MaxBandDepth for more information.

     

  • 820
    Suggested Answer
    posted

    After some more digging I found the problem. These lines were in the working controls but not the ones that crashed. Added them and the freezing stopped. I think something about the child objects was causing it to go haywire on the second load.

     

     

     

     

     

    this.taskStatusGuidUltraCombo.DisplayLayout.MaxBandDepth = 1;

     

     

    this.taskStatusGuidUltraCombo.DisplayLayout.Override.BorderStyleRow = Infragistics.Win.UIElementBorderStyle.None;

     

     

    this.taskStatusGuidUltraCombo.DisplayLayout.ViewStyle = Infragistics.Win.UltraWinGrid.ViewStyle.SingleBand;

     

     

    this.taskStatusGuidUltraCombo.LimitToList = true;