2009-07-02 37 views
0

我有一个名为4个字段的列:a> Main,b> Forward c> Back d> Link,如果我使用预定义的datagrid排序与列名将按字母顺序排列,那么顺序是c> Back b> Forward d> Link a> Main。但是,我不想根据字母排序。我更喜欢按列字段的名称排序。即以某种方式优先考虑每个单独的列字段名称。像预先定义我自己的订单一样。自定义在flex中的数据网格排序

它可能在flex?

回答

0

我有4个字段列名为

你的意思是没有记录的字段,做你想做什么,我想你应该添加一个列,如“投票”的整数。并增加当用户点击时减少它的值,当用户点击时减少... 就像我们在这里..

1

用以下签名写一个函数,然后指定它为“sortCompareFunction”属性您的DataGridColumn:

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

obj1 - 要比较的数据元素。

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

函数应该返回基于对象的比较值:

  • -1,如果obj1应以升序出现在obj2前面。
  • 0 if ifj1 = 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

+0

你能否提供一些小的代码可视化更美好?例如。采取2个不同的列和比较它们。谢谢。 – user120118 2009-07-06 21:04:16