【发布时间】:2010-11-22 18:35:17
【问题描述】:
我扩展了 DataGridColumn,因为我想包含一个自定义 itemToLabel 函数(以便能够在 DataGrid 中显示嵌套数据。请参阅this 问题。
无论如何,它还需要一个自定义排序功能。所以我写了这样的排序函数:
private function mySortCompareFunction(obj1:Object, obj2:Object):int{
var currentData1:Object = obj1;
var currentData2:Object = obj2;
//some logic here to get the currentData if the object is nested.
if(currentData1 is int && currentData2 is int){
var int1:int = int(currentData1);
var int2:int = int(currentData2);
var result:int = (int1>int2)?-1:1;
return result;
}
//so on for string and date
}
在我的 CustomDataGridColumn 的构造函数中,我放了: 超级(列名); sortCompareFunction = mySortCompareFunction;
每当我尝试对列进行排序时,都会收到错误“Error: Find criteria must contain at least one sort field value.”
当我调试并逐步执行每个步骤时,我看到前几次,函数被正确调用,但到最后,出现此错误。
有人可以解释一下这里发生了什么吗?
谢谢。
【问题讨论】:
标签: apache-flex datagrid adobe