1

我有一个自定义<mx:DataGrid />,每 60 秒使用来自 ColdFusion 服务器的数据进行更新。我注意到每次 DataGrid 更新和重绘滚动位置都会重置到顶部。

有没有办法可以保留我的 DataGrid 的滚动位置?

提前致谢。

4

2 回答 2

4

我很确定您可以使用verticalScrollPosition。更新前保存,更新后重置。请记住,如果您要更改 dataProvider,verticalScrollPosition 可能不会指向新旧 dataprovider 中的同一位置。

于 2010-09-08T15:56:08.523 回答
0

只是为了提供更多细节。我这样做的方法是创建一个名为 scrollPos 的变量,然后在

<mx:DataGrid id="someId"我用了

scroll="scrollPos=someId.verticalScrollPosition"

然后在更新 dataProvider 后,我调用一个函数:

private function setScrollPosition() : void {
  someId.verticalScrollPosition = scrollPos;
}

或者您可以只设置变量而不是调用函数。

于 2014-07-12T04:41:12.617 回答