Hi,
We've had numerous customers report a slowdown in our WinForm client since the February 2021 Windows 10 Cumulative update. We have been working with Microsoft developer support to find what caused this. It appears this update introduced a slowdown in the WIndows API GdipMeasureString. One place this gets called is from Graphics.MeasureString. Microsoft is working on a fix for this but so far the solution they have come up with does not seem to return performance to it's original levels.
One spot we have found where MeasureString gets called is from the UltraGrid. For instance setting the Active row will trigger a call into the Infragistics.Win.DrawUtility.MeasureString method which in turn calls Graphics MeasureString.
We are currently using the 2012 V2 version of the Infragistics controls and we are wondering if you are aware of this MS API slowness and if there have been any changes done to the controls since 2012 that might have improved this?
We are trying to determine if we should upgrade to the latest version or not.
Thanks
According to the Windows engineer that analyzed the regression, the problem is that Infragistics is calling GdipMeasureString an unusually high number of times. Also that it calls it with a different instance of a font each time even though it is the same font (not entirely sure what that means but hopefully your engineers will).
It should be easy to reproduce. Just setting the ActiveRow on the UltraGrid triggers it.
If this is happening in v19.1, then we could certainly look into it, but we would need to be able to reproduce the issue here so we can debug it. Are you able to reproduce the issue in 19.1? Can you create a small sample project demonstrating it?
We are seeing similar reports from some end users and we also assume an MS update was a factor. We are running 19.1 version and traced the slowdown to UltraGridColumn.PerformAutoResize. We are only resizing first 10 rows, but still takes several second per column. Going to try other approaches to calculating column size, but any other info would be helpful.
Hello,
From what I understand this issue has been introduced this February, meaning releases from past years would not be targeting it, as there was no problem so far.
As per my previous reply, the trial version of our latest product is free. As there has been many changes in the code over the years, it is possible that the newest version offer better performance, but that can only be verified by testing.
All changes between version are documented and can be found here. As there are some breaking changes between versions, I would suggest going trough the documented changes as well.
Having both points covered, you should have all the information needed in order to make a decision whether upgrade would suit your needs at this time.
Sincerely,Tihomir TonevAssociate Software DeveloperInfragistics