My UltraWinGrid 7.3 grid, built with .NET3.5 (VS 2008)suffers from performance issues. I have tried the tricks given in http://news.infragistics.com/forums/t/15306.aspx ... this did improve performance, but now, certain grids "Blink" coz the updates coming in are too quick to handle. Here are my questions:
1) If only one cell is updated in a row, is there a way that only that cell is repainted and not the entire row/grid? If not, whats the least expensive way (time wise) of handling real time cell updates?
2) The DataSets im binding as DataSource have atmost 2 relations ... most have none at all. Would I still need to use a BindingSource to bind the DataSets?
Thanks.
sbasavar said:2) The DataSets im binding as DataSource have atmost 2 relations ... most have none at all. Would I still need to use a BindingSource to bind the DataSets?
The best way to tell is to try it out. I can't say for certain if this will be okay. But any problems you encounter will be immediately obvious. If you bind the grid directly, without using a DataSource, and you can expand down to the lowest level of data and select a row in the grid, I'd say you're safe.
My Grid doesnt have any formulae ... all the values are passed to the server for calculation.
I tried putting a binding source, but it didnt seem to work.
Here's what ive done so far:
1) Currently I directly bind a DataSet as a datasource. These have either 1 or 0 relations. I tried the Binding source with the DataSet name, but that failed.
2) For every Data Source update, I suspend painting and row synchronization and enable it immediately after , but this causes the Grid to blink every now and then. Now I now that each time only a few (2-3) cells are updated, in different parts of the grid, but is this causing the whole grid to be redrawn ?
3) The Cell Display Style is now "Plaintext" for all grids
4) Ive re-used appearances whereever possible
5) My "MaxBandDepth" is 1 or 2 for all the grids.
6) all the data types match (that was always the case)
Is there anything else I can do?
sbasavar said:2) For every Data Source update, I suspend painting and row synchronization and enable it immediately after , but this causes the Grid to blink every now and then. Now I now that each time only a few (2-3) cells are updated, in different parts of the grid, but is this causing the whole grid to be redrawn ?
If you are only updating 2-3 cells at a time, then this is probably slowing things down more than speeding it up. The idea behind using BeginUpdate/EndUpdate is when you know you are going to be changing a lot of cells in the grid all at once and you don't want the grid to paint after each cell. Using BeginUpdate will invalidate the entire grid, so when you call EndUpdate, the entire grid has to paint.
sbasavar said:Is there anything else I can do?
I can't think of anything else. What exactly is the issue you are having? Perhaps if you could be a bit more specific, I might be able to point you in the right direction