1

你好,

我想在网格首次加载时为特定行调用 sortCompareFunction。这可能吗?否则,有没有办法在分配数据提供者已更新数据后,在网格加载时调用排序方法

4

2 回答 2

1

调度一个headerRelease 事件- 我没有尝试过这个,但是DataGrid收到这个事件后的排序。

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

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

于 2009-12-03T17:07:50.427 回答
0

Zied,就我而言,我需要调用两次排序函数。首先,当网格第一次加载时,其次当数据提供者更新时。

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

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

我第二次调用排序函数是在 CollectionEvent.COLLECTION_CHANGE 事件上。每当数据提供者更新时,这都会启动。

于 2010-11-01T08:55:08.363 回答