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
1105
CalcManager recalc
posted

Our application uses both the ultragrid and the ultracalcmanager (the ultracalcmanager is used to allow users to add their own formula columns to grids).  Our code necessitates us calling the recalc function with (-1).  Everything worked great.

We had been lagging in keeping our infragistics version current, so just recently upgraded to 12.1.  After the upgrade, we noticed under certain conditions (some combination of):

1. Binding an underlying datatable

2. Adding an unbound formula column

3. Calling PerformAutoResize() on the formula column

4. Adding a filter

5. Calling ultragrid.displaylayout.RefreshFilters()

Immediately making a call to ultracalcmanager.recalc(-1) would cause the application to deadlock and become unresponsive.  Breaking would find execution in the recalc method.

We contacted support who suggested we needed to set the ultragrid.displaylayout.override.FormulaRowIndexSource.  Previously we had never set this value (so it should use default, which the documentation says is "VisibleRows").  Setting this value to .RowIndex in 12.1 fixed the hanging problem.

My question is this:  What exactly does this option do, and under what scenario should we be using one over the other?  Obviously something changed between 10.1 and 12.1 in and around this value, but I'm really uncomfortable with just trying every value until one works (and support wasn't very descriptive in their response).

I should note that we applied the latest 12.1 patch to .2038, but I verified that setting the row index source to .RowIndex in 12.1.1001 also fixed the problem as well (so it doesn't appear to be something that changed in the patch).

Appreciate any help you can provide!

Chris Rowland

Parents
No Data
Reply
  • 20872
    Offline posted

    Hello Chris,

    We have further researched this behavior and we logged an internal work item with our Development team regarding this behavior when using ReCalc(-1) function - 118315.

    I have also create the following private ticket for you: CAS-97352-VZKFK1

    What you could use in order to avoid the hanging is using the following method prior calling ReCalc like:
    ultraGrid1.DisplayLayout.UIElement.VerifyChildElements(true);
    ultraCalcManager1.ReCalc(-1);

    If you have any other questions or if you need any further assistance please feel free to let us know.

Children
No Data