CodeZine(コードジン)

特集ページ一覧

VirtualCollectionフレームワークを使ったロードオンデマンド処理の実装

NetAdvantage Silverlight LOB 機能解説

  • LINEで送る
  • このエントリーをはてなブックマークに追加
目次

VirtualCollectionを使って
DataGridのスクロール処理をロードオンデマンド化する

 VirtualCollectionを使うとスクロール処理に連動したロードオンデマンドも簡単に実現できます。ページングは「いちいちページをクリックする」労力が発生することもあり、ユーザー視点では比較的負荷が高いUI操作ですが、それに比べるとスクロール操作はマウスのホールド&ドラッグだけなので、より自然なデータブラウジング方法として好まれる場面は多いです。

 以下の実行例スクリーンショットを見ると、スクロール操作に連れて必要なデータリクエストが行われている様子が確認できます。例えば数万件といったデータをスクロール・ブラウジングする必要があるような要件がある場合、このようなロードオンデマンドの実装が必須となるでしょう。

DataGridのスクロール処理をロードオンデマンドで行う実行例
DataGridのスクロール処理をロードオンデマンドで行う実行例

 スクロール処理にロードオンデマンドを適用する際の実装については、ページングを使用する場合とほとんど変わりません(VirtualCollection.PageSizeプロパティの指定が不要、というくらいです)。詳しくはサンプルコードをダウンロードして動作と合わせて確認してください。また、VirtualCollectionのその他の機能については以下のオンラインヘルプ トピックも併せて確認してください。

まとめ

 今回の記事ではVirtualCollectionを使ったロードオンデマンドの実装に焦点を当て、標準のDataGridコントロールと組み合わせを例にとって解説しました。もちろんNetAdvantageに含まれる、高機能なデータグリッドコントロールxamWebGridと組み合わせて使うと効果が倍増します(xamWebGridについては『Silverlight用の高機能データグリッドコントロール「xamWebGrid」活用術』もご覧ください)。xamWebGridが持っている「遅延スクロール機能」と組み合わせることや、編集操作やグルーピング、フィルタといった拡張機能にも対応することができます。

 NetAdvantage Silverlightには今回取り上げたVirtualCollectionをはじめ、ドラッグ&ドロップ フレームワーク、コントロールの状態保持を実現するパーシステンス フレームワークなど、一般的なUI要件の実装をスムーズに行うためのフレームワークも多く収録されています。これらのフレームワーク群はリッチなコントロールが必要ないケースでも単体で活用できるものなので、ぜひチェックしてみてください。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

あなたにオススメ

著者プロフィール

バックナンバー

連載:Infragistics NetAdvantageチュートリアル

もっと読む

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5