在更新dataprovider的数据后保持我的排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在更新dataprovider的数据后保持我的排序相关的知识,希望对你有一定的参考价值。
我有一个数据网格,数据提供者中的数据每30秒自动更改一次。每当它发生时,如果我选择通过单击标题对列进行排序,它将恢复为默认排序(在我单击标题之前)。我想知道如何控制排序,这样如果我之前点击它,它将在接下来的30秒内保持排序。
<mx:DataGrid id="id" width="100%" height="100%">
<mx:columns>
<mx:DataGridColumn dataField="@col1" headerText="Type1" itemRenderer="itemRenderer" />
<mx:DataGridColumn dataField="@col2" headerText="Type2" itemRenderer="itemRenderer" />
</mx:columns>
<mx:dataProvider>
{xmllist_extractedfromAnotherSourceEvery30Seconds}
</mx:dataProvider>
</mx:DataGrid>
答案
猜测......排序顺序存储在dataProvider(ArrayCollection)中,当您重新分配新的dataProvider时它会丢失。
你可以:
- 使用ArrayCollection更新函数更新dataProvider,而不是重新分配它
- 如果不可能,get the ISort来自dataProvider之前更改它;然后在加载后将此ISort应用于新的dataProvider(并记住刷新()dataProvider)
以上是关于在更新dataprovider的数据后保持我的排序的主要内容,如果未能解决你的问题,请参考以下文章