CodeZine(コードジン)

特集ページ一覧

Silverlightが持つ強力なデータバインド機能

Silverlightで行うデータ処理アプリケーション開発の第一歩 第4回

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

 今回の記事では、Silverlightアプリケーション上で取得したデータをもう少し掘り下げて取り扱ってみます。XAMLがもつ強力なデータバインド機能を用いて、データサービスから取得したデータをどのように扱うべきかのポイントを紹介します。

目次

はじめに

 前回までの記事で、データが画面(コントロール)上に表示されましたが、単に取得して表示したに過ぎません(一部フォーマットの部分はバインドを使用しました)。

 今回の記事では、Silverlightアプリケーション上で取得したデータをもう少し掘り下げて取り扱ってみます。XAMLがもつ強力なデータバインド機能を用いて、データサービスから取得したデータをどのように扱うべきかのポイントを紹介します。

 また、この連載はサンプルシステムをベースに説明を行います。以下のサイトからサンプルコードや実行ファイルを入手して、確認しながら読み進めていただけると、より一層理解が深まると思います。

サンプルアプリケーションの公開サイト

Silverlightアプリケーションのデータバインド

 データバインドとは、データソースとターゲットを文字通りバインド(結びつけ)します。これによって、データを画面に表示すること、データの内部管理を簡素化することなどが可能です。

 ご存知の通り、SilverlightはXAMLを採用しているので、データバインドはXAMLベースの実装になります。例えば、Windows Formでのデータバインドには、BindingSourceコントロールを使用することが可能でしたが、XAMLベースのデータバインドにはこうした特定のコントロールは存在していません。その代わりに、XAML自体にバインドの機能が組み込まれています。コーディングしていくうえで、データバインドの実装はXAMLのマークアップ言語(静的)、C#などの.NET Framework言語(動的)、どちらの実装も可能ですが、今回の記事ではXAMLベースで紹介していきます。

 基本的な構文は以下になります。

<対象オブジェクト プロパティ=”{Binding パスの値, バインディングプロパティの値}”>

 例えばTextBlockコントロールであれば、次のようになります。

<TextBlock x:Name="productNameTextBlock" 
           Text="{Binding Product.Name}" 
           FontSize="16" FontWeight="Bold" />

 上記のコードでは、TextBlockコントロールのTextプロパティがバインドターゲットです。そこに、何らかのデータであるProduct.Nameが表示される形になります。


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

著者プロフィール

  • マイクロソフト株式会社 小高 太郎(コダカ タロウ)

    マイクロソフト株式会社 デベロッパーエバンジェリスト。 某国内SI企業にてERPパッケージ開発に携わり、プログラマー、SE、PMと様々なロールを担当すると共に、Microsoft Universityの講師を兼務する。マイクロソフト株式会社では、デベロッパーエバンジェリストとして開発者向けに様々な...

バックナンバー

連載:Silverlightで行うデータ処理アプリケーション開発の第一歩
All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5