flex datagrid - 是否可以在初始化时调用sortCompareFunction

时间:2009-12-03 16:51:48

标签: flex datagrid sortcomparefunction

HI,

我想在网格首次加载时为特定行调用sortCompareFunction。这可能吗?否则有一种方法在网格加载后调用排序方法后,数据转换器已被更新

2 个答案:

答案 0 :(得分:1)

发送headerRelease event - 我没试过,但DataGrid在收到此事件后排序。

datagrid.dispatchEvent(new DataGridEvent(DataGridEvent.HEADER_RELEASE, 
        false, false, zeroBasedIndex_of_theColumn_ToSort, 
        dataField_of_that_column));

如果这不起作用,请抓取并将相应的headerRenderer实例作为第八个参数传递给DataGridEvent构造函数。

答案 1 :(得分:0)

Zied,在我的情况下,我需要调用sort函数两次。首先,当网格首次加载时,第二次更新数据提供者时。

我第一次调用它是在FlexEvent.CREATION_COMPLETE上。此时我必须做一些异常处理,以确保如果dataprovider为空,我不会尝试对其进行排序。

myArrayCollection.sort = new Sort();
myArrayCollection.sort.fields = [new SortField("roomName", true, false, false)];
myArrayCollection.refresh();

我第二次调用sort函数是在CollectionEvent.COLLECTION_CHANGE事件上。只要数据提供者更新,这就开始了。