在flex中自定义datagrid中的排序

时间:2009-07-02 03:23:51

标签: flex datagrid sorting

我有一个包含4个字段的列:a> Main,b>转发c>返回d>链接,如果我使用数据网格的预定义排序,其中列名将按字母顺序排列,则顺序为c>返回b>转发d>链接a>主要。但是,我不想根据字母排序。我更喜欢按列字段的名称排序。即以某种方式优先考虑每个单独的列字段名称。就像预先定义我自己的订单一样。

是否可以在flex?

2 个答案:

答案 0 :(得分:1)

编写具有以下签名的函数,然后将其指定为DataGridColumn的“sortCompareFunction”属性:

mySortCompareFunction(obj1:Object, obj2:Object):int 

obj1 - 要比较的数据元素。

obj2 - 与obj1进行比较的另一个数据元素。

该函数应根据对象的比较返回一个值:

  • -1如果obj1应该在obj2之前按升序出现。
  • 0如果obj1 = obj2。
  • 1如果obj1应该在obj2之后按升序出现。

注意:obj1和obj2参数是整个数据提供者元素,而不仅仅是项目的数据。

http://livedocs.adobe.com/flex/3/langref/mx/controls/dataGridClasses/DataGridColumn.html#sortCompareFunction

这里有一些排序示例:

http://blog.flexexamples.com/2008/04/09/creating-a-custom-sort-on-a-datagrid-control-in-flex/#more-590

答案 1 :(得分:0)

  

我有一个包含4个名为

的字段的列

你的意思是记录不是字段,要做你想做的事情我认为你应该再添加一列,例如“投票”整数。当用户点击时增加值,当用户点击时减少它... 就像我们在这里......