Hi,
I am wondering if some one could explain the paging model in the grid at the moment? and how it can help with performance. (In fact a detailed perfomance guide would be good as it would seem that there are quite a lot of gotcha effecting performace of the grid with large datasets.)
As this rolls on to another question asking if i can tell the grid that it will get 10,000 items but in chunks. I.e load 1000 to the grid first nice and fast an then fill the datasource with the other 9000 items.
Marcus
Hi Marcus,
Did you check the Performance in the Infragistics Silverlight xamWebGrid document?
It seems it could be what are you looking for.
HTH,
Thats really a marketing document.
What i was wanting was a technical document show me how to get the best performance from the grid and data strategies to go with that.
steven,
thanks for your reply. that clears a lot up
marcus
Paging in the grid isn't so much of a performance amplifier but is actually more of a usability feature for navigating large amounts of data, as scrolling isn't usually the best metaphor.
The grid itself, can actually handle millions of rows, without showing a performance hit at all, b/c it only accesses data that is currently in view. In fact, it only access the count of your collection to determine how much to scroll. This is done via our virtulalization feature which you can read about a bit more here:http://help.infragistics.com/Help/NetAdvantage/Silverlight/2009.1/CLR3.5/html/SL_xamWebGrid_Virtualization.html
As for perf tips regarding your datasource, the main thing that you're going to want to have is a datasource that implements IList and INotifyCollectionChanged, an example of that is an ObservableCollection. This will allow the grid to be notified of updates in your collection immediately without you having to manually notify the grid. Also, its definitely worth having your underlying data model implement INotifyPropertchanged, so that any changes to your data are immediately refelected in the grid.
We currently don't have a delay loading model for getting your data to the client, however its something we are looking into via Ria Services.
Hope this helps clarify any unclear issues.
-SteveZ