Hello,
I would like to write custom code that will group the results with the OutlookGroupBy feature. What I'd like to do when the user drags the column to the group by box, I'd like to go out to the server, grab the data for the group-by rows only, and then load the rest of the data on demand.
I have already solved the problem of loading data on demand by using the UltraWinDataSource, but I'm not sure how to override the outlook group by so that I can do my own grouping or if that is even possible.
I have written my own method of allowing the user to group the columns, but it is not as cool as the built-in OutlookGroupBy feature, so I'd prefer to use that if I can override the default behavior of the control that does the actual grouping. I'm wondering if perhaps it works in a way that is similar to the sorting where I can set the HeaderClickAction to ExternalSortMulti and then write my own sorting code.
Thanks.
This is not possible. You can't have a GroupByRow in the grid without child rows under it. And if you are currently loading the data in the UltraDataSource on demand, then as soon as you sort or group the data, the grid will request all of the rows in order to sort them, so any benefit of the on-demand functionality will be lost at that point.
You can override the default grouping behavior to control which rows belong in which group by using a GroupByEvaluator and possibly a SortComparer on the column. But there's no way to group on-demand.