我有一个需要多级分组的radgrid,到处都有聚合。其中一些聚合是自定义聚合,这是我必须做的第一个自定义聚合。
我发现每个自定义聚合都会触发OnCustomAggregate事件:对于层次结构中任何分组中的每个自定义聚合列,以及网格" grand-total"页脚。
我的问题:如何在CustomAggregate事件处理程序中告知网格正在请求WHAT组聚合?例如,如果我的数据按国家/地区分组,那么按国家/地区,我如何判断CustomAggregate的当前调用是针对"巴西"或"加利福尼亚"还是&#34 ;整个网格的总计"?
今天我的谷歌搜索似乎让我失望了。
谢谢。
答案 0 :(得分:0)
嗯,我终于找到了一个可以帮助你入门的示例项目。这个link有一个完整的示例项目,但我在下面添加了自定义聚合处理代码段。
protected void RadGrid1_CustomAggregate(object sender, GridCustomAggregateEventArgs e)
{
if (e.Item is GridGroupFooterItem)
{
GridGroupFooterItem footer = e.Item as GridGroupFooterItem;
GridItem[] groups = RadGrid1.MasterTableView.GetItems(GridItemType.GroupHeader);
foreach (GridGroupHeaderItem group in groups)
{
if (group.GroupIndex == footer.GroupIndex)
{
int count = 0;
e.Result = Calculate(group, count);
}
}
}
if (e.Item is GridFooterItem)
{
e.Result = 5;
}
}