SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Infragistics NetAdvantageチュートリアル(AD)

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

NetAdvantage Silverlight LOB 機能解説

  • X ポスト
  • このエントリーをはてなブックマークに追加

 NetAdvantage Silverlight LOBは、Silverlight 4に対応した高性能コントロール・スイートです。今回は その中の一つVirtualCollectionフレームワークを使用して、Silverlightのデータグリッドソリューションでロードオンデマンド処理を実現する方法を解説します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 NetAdvantage Silverlight LOBは、Silverlight 4に対応した高性能コントロール・スイートです。高機能なデータグリッドコントロールであるxamWebGridを含めさまざまな業務向けコントロールが収録されていますが、その真価はコントロールだけではなく、その背後に構築されたフレームワーク機能にも便利なものが多数あります。今回は その中の一つVirtualCollectionフレームワークを使用して、Silverlightのデータグリッドソリューションでロードオンデマンド処理を実現する方法を解説します。

対象読者

 Silverlightによるアプリケーション開発者。特にVisual Studio 2010, Expression Blendなどのツールを使ったプログラミング経験がある方。なお、本記事の中でご紹介するプログラムコードはすべてC#で記述しています。

必要環境

 Silverlight 4アプリケーションが構築できる環境としてVisual Studio 2010およびSilverlight 4 Tools for Visual Studio 2010がインストールされていること。さらにNetAdvantage Silverlight LOB 2010 Vol.1が含まれる、NetAdvantage for WebClient 2010 Vol.1またはNetAdvantage for .NET 2010 Vol.1の正式版またはトライアル版をインストールする必要があります。

NetAdvantageのインストール

 はじめてNetAdvantage Silverlight LOBを使用する場合には、事前にソフトウェアをインストールする必要があります。まだお持ちでない場合は、インフラジスティックス ジャパン社のWebサイトよりインストーラーを入手してください。製品購入前の評価用として用意しているトライアル版で、各コントロールの使い方を学ぶことができます。

 なお、NetAdvantage Silverlight LOB 2010 Vol.1はもともとSilverlight 3でビルドされていますが、製品購入後に取得可能なサービスリリースを適用することでSilverlight 4版のアセンブリーにアップデートされます。

NetAdvantage Silverlight LOB について

 NetAdvantage Silverlight LOB(Line Of Business)は、Silverlightをプラットフォームとした本格的な業務アプリケーション構築を行うためのコントロールスイート製品です。本記事で紹介するxamWebGrid以外にも、ツリービュー(xamWebTree)、Outlookライクなナビゲーション(xamWebOutlookBar)、マスキングや数値入力のエディターなどさまざまなコントロールが含まれています。詳細についてはサイトまたはオンラインサンプルでご確認ください。

ロードオンデマンドの必要性

 まずは本稿で解説する「ロードオンデマンド」機能について解説します。

 一般にWebアプリケーションで大量行のデータを表示する際、「ページング機能」を併用することが多いと思いますが、これはまさにHTMLベースのWebアプリケーションにおいて欠かすことのできないロードオンデマンドの代表的な適用例と言えます。ページングを適用して1ページあたりの表示行数に制限を加えることで、初回(または2回目以降)の読み込みデータ量を制限することができ、結果として1回あたりの画面ロード時間の短縮を実現します。そして、ユーザーが選択したページのデータを「必要に応じて(=Load On Demand)」読み込んで表示を差し替えることで、情報量の制限による利便性の低下を最小限に抑えています。

 WebアプリケーションではHTMLとして描画情報を転送するコストの高さからロードオンデマンドが欠かせない要素となっていますが、対してSilverlightアプリケーションではクライアント側のリソースを描画に使えるため、必要なデータのみを転送することができ、Webアプリケーションに比べるとその重要性は若干薄れる感はあります。例えば一度に1000行程度のデータをロードしてデータグリッド上に情報を表示しても、初回のロード時間さえ我慢できれば快適な操作が可能です。しかしながら、例えばWeb検索サイトのように数万~数十万のデータをロードする必要がある場合には初回ロードのデータ転送だけで相当な時間がかかってしまうでしょうし、初回表示までの応答速度こそが最優先の場合などはやはりロードオンデマンドの実現が重要になります。

次のページ
VirtualCollection によるロードオンデマンド

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Infragistics NetAdvantageチュートリアル連載記事一覧

もっと読む

この記事の著者

インフラジスティックス・ジャパン株式会社 山田 達也(インフラジスティックス・ジャパンカブシキガイシャ ヤマダ タツヤ)

国内ソフトベンダーにて多数の.NETプロジェクトに携わる。現在はインフラジスティックス・ジャパンで開発サポートを担当しつつ、リッチクライアントやRIA技術を広めるべくエバンジェリスト修行中。趣味は全国競馬場巡りで夢はラスベガス在住。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5280 2010/06/25 18:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング