1

値オブジェクトのセットを含む ArrayCollection があります。この ArrayCollection は、DataGrid にデータを設定します。サーバーへの HTTPService 呼び出しを介して ArrayCollection にデータをロードしています。最初のサーバー呼び出しが行われると、データグリッドに最新のデータ (金融価格) が表示されていることを確認するために、サーバーへの呼び出しを繰り返し開始します。新しい更新を取得すると、グリッド内のすべてのデータがリロードされるため、データがちらつきます。

サーバーから新しいデータセットが返されたときに、データグリッドの特定の列のみを更新するにはどうすればよいですか?

スティーブン

4

1 に答える 1

0

DataGridのdataProviderを置き換える代わりに、個々の要素を更新する必要があります。基本的に、新しいデータと古いデータをループします。同様の要素を確認し、データが更新された場合はそのVOを置き換えます。

これにより、ArrayCollectionのcollectionChangedイベントが発生し、DataGridの適切なセルのitemRendererが更新されます。

ただし、これは単にdataProviderを置き換えるよりもパフォーマンスが低いと思います。理論的には、すべてを更新するのではなく、更新が必要な要素だけを更新するため、ちらつきが少なくなるはずです。

于 2010-06-23T11:27:22.227 に答える