我有两个可用于行区域的字段。其中一个是“ID”,另一个是“名称”。将它们放入行区域时,按ID,okey排序。但是当我把“名称”字段放到那里时,它按值排序。
我正在尝试按ID排序而不显示但尚未克服。
Here the documentatio n但是不太清楚可以解决我的问题。
有人知道怎么解决吗?
编辑:示例:
alt text http://community.devexpress.com/forums/214248/PostAttachment.aspx
答案 0 :(得分:1)
以下是适合您的代码:
private void pivotGridControl1_CustomFieldSort(object sender, DevExpress.XtraPivotGrid.PivotGridCustomFieldSortEventArgs e) {
if(e.Field.FieldName == "Name") {
int value1 = Convert.ToInt32(e.GetListSourceColumnValue(e.ListSourceRowIndex1, "ID"));
int value2 = Convert.ToInt32(e.GetListSourceColumnValue(e.ListSourceRowIndex2, "ID"));
e.Result = Comparer.Default.Compare(value1, value2);
if(e.SortOrder == DevExpress.XtraPivotGrid.PivotSortOrder.Descending)
e.Result = -e.Result;
e.Handled = true;
}
}
有效吗?