[整理]flex,datagrid数值列排序

最近几天遇到一个问题,从数据库里取出来的数据,转成ArrayCollection,绑定到datagrid上,结果发现点击id表头时,竟然不按数值从小到大排序,而是按字符串的ascii码来排,后来问了ks,在javaeye上面找到的解决方法,需要自定义一个排序的方法,然后调用就可以,在我的电脑上已经应用成功,现在把这个仁兄的整理一下,发出来,附链接地址:http://i5land.javaeye.com/blog/301574
那个自定义排序方法的代码:
 1 public function sortcompare(obj1:Object,obj2:Object):int{
 2     var num1:Number=Number(obj1.id.toString());
 3     var num2:Number=Number(obj2.id.toString());
 4     if(num1>num2){
 5         return 1;
 6     }else if(num1<num2){
 7         return -1;
 8     }else{
 9         return 0;
10     }
11 }
然后只要在需要重新定义排序方法的列上改变这个属性即可:sortCompareFunction="sortcompare"
posted @ 2009-09-03 09:57  Cnol  阅读(1889)  评论(0编辑  收藏  举报