I have an UltraGrid, with about 40 columns and 10000 rows. Most columns are strings, but a couple are DateTimes or objects. The UltraGrid datasource is bound to a DataSet with only one table. Only the visiblerows are being updated with data, with the data being updated on a row by row basis fairly often. Somehow, the grid is ultra, ultra slow, and at higher resolutions it takes a long time to scroll up and down, and left and right too. I am wondering why this is? I notice Infragistics WinForms are still on .net 2.0 - .net 3.5 supposedly sped up DataSets heavily. Do you have any other ideas for why this is so slow? It is a serious problem.
It's hard to say what's causing it to be slow without knowing more about what your application is doing. But I have a few suggestions:
1) Set Visual Studio to break on all run-time exceptions. If exceptions are occurring and being caught, this can cause serious performance issues.
2) If you are using ValueLists in any columns, try turning them off and see if that makes any different. Obviously, removing your ValueLists is not a solution, this is just a test.
3) Set SynchWithCurrencyManager to false and see if that helps.
4) Check out the CellDisplayStyle property of the column. You can improvide performance by using this property to turn off features you are not using.
5) If you are applying appearances in the InitializeRow event of the grid, try commenting them out and see if that helps.
Thanks for the reply. I have no valuelists, no InitializeRow event, and I tried debugging and seeing any thrown exceptions, but none are thrown. SynchWithCurrencyManager had no noticable effect (I have no formulas). Unfortunately what is bizarre to me, is that I've commented out all of the sections that actually update the grid, and the grid is slow just being bound to a dataset itself of 10,000 rows / 40 columns (with no points filled in at any time after initial points from dataset). This dataset is not bound to any database, it's just purely a dataset object with datatables and rows. It doesn't help performance not filling in points, so I'm thinking there's something strange going on with the Grid. There are no colors or bitmaps, although I do have two cell button clicks inside the grid, and some of the columns are custom types (such as datetime or object, all with the ToString() called [I assume]), and there are some booleans. Removing the custom types didn't seem to help though either.