I started searching this forum for implementation of virtual mode on an UltraWinGrid, and found various threads on this but nothing telling me the basics: how do you implement a virtual grid in the first place? Where do I start, what is the first thing I do? Would appreciate any help.
Thanks,
Hakim
How does the outlook groupby and the summaries work in this mode. I would like to use this as I have realtime threading application that modifies the datasource the grid is bound to and I dont want to have the Windows control STA model stop me from manupulating the grid
thotanaveen said:How does the outlook groupby and the summaries work in this mode
It doesn't. If you attempt to group the grid or apply a summary, then the grid will simply loadall of the data in order to do what it needs to do, thereby losing any benefit from loading on demand.
If you are loading the grid on-demand through an UltraDataSource and the UltraDataSource is on the same UI thread with the grid, then I can't see any reason why this would not work.You would just have to be careful that when the user expands a row or scrolls the grid that the code in the UltraDataSource doesn't try to get data from a different thread without marshalling. But this seems like a good approach to me.
Thanks for your reply Mike.
I dont have much data but there are multiple threads manipulating the datatable data. Currently I am STA (running in sta) ing the datatable manipulation because it is bound to datagrid and UI updates can only happen in main thread. By doing this I am locking the entire datatable.
I would like to go with virtual mode where the grid is not directly connected to the datatable and multiple threads can go ahead and manipulate datatable by putting the critical section only at datarow level (not at datatable level) and yeild the cellvalues when the event request happens.
I also have summary calculations, sorting, group by etc (all the fancy ultrawingrid features).
I am about to implement this in wingrid 8.1 but would like to see if you saw any issues with multiple threads manipulating different datatable rows working in virtual mode (assuming I take care of thread safe manipulation of datatable rows)
I'm looking at the given links on virtual grids. Where to I hook the event "Load_Data_on_Demand_Load"?