Flex DataGrid自动滚动dataProvider更改

时间:2011-08-09 15:23:06

标签: flex actionscript-3 flex3

当我更新dataProvider(ArrayCollection)时,我的Flex数据网格会自动滚动到顶部。我不希望这种情况发生,但我仍然希望所有对象都要更新。我正在为客户的管理系统开发一个半实时仪表板,它将经常更新。如果每次更新时滚动到顶部,使用它将非常困难和令人沮丧。

我试图使用以下技术来防止这种情况,但都没有。

dataProvider = updatedDataProvider;
dataProvider.updateItem(dataProvider);

dataProvider.source = updatedDataProvider.source;
dataProvider.updateItem(dataProvider);

我试图发送一个鼠标事件来保持垂直滚动条到位,我试图锁定垂直滚动条位置值(保存并重新分配)......

还有很多其他人,这些只是我脑子里的第一批。有人有什么想法吗?

2 个答案:

答案 0 :(得分:2)

已在How do I maintain selection in a DataGrid when the data changes?中回答,请检查。

在该答案的基础上,如果索引在数据提供者之间发生变化,即如果上面插入了一行,则可能需要在新提供者上执行getItemIndex。

答案 1 :(得分:-1)

如果您选择之前选择的内容并使用ensureIndexIsVisible()?

,该怎么办?