Hello World, Silverlight 2 !!

というわけで、まずしょっぱなは VS2008 と Expression Blend 2.5 を使った Silverlight 2 のアプリケーション開発の基本について説明してみたいと思います。実は今年の TechEd 2008 では Silverlight 2 の説明をやりたかったんですが、技術調査が間に合わずに断念……してしまったので、ここで解説してみようと思います。(TechEd の Agenda 締め切りってめっちゃ早いんですよ……とまあそれはともかく。)

さて、Silverlight 2(以下 SL2)は WPF のサブセットのプログラミングモデルを持っています。この WPF は、もともと以下の 3 つの異なるプログラミングモデルを統合するために開発されたフレームワークでした。

  • ドキュメントタイプのコンテンツ(HTML のようなワープロタイプのコンテンツ)
  • 固定座標レイアウトタイプのフォーム(Windows フォームのようなもの)
  • 3D ベクターグラフィックス(DirectX のようなもの)

従来、全く異なるプログラミングモデルで開発されていたこれらのアプリケーションを、XAML を中心とした一つのプログラミングモデルで開発できるようにしたのが WPF であり、サブセットである SL2 も同じ特徴を持ちます。しかしこの WPF/SL2 のプログラミングモデルでは、レイアウトシステムやコンテンツ合成モデルなどの新しい UI 構築概念が導入されており、これらの特有の概念を理解しないと、WPF や SL2 を「全く」使いこなせないと思います。特に、Expression Blend はこの WPF, SL2 の UI 概念に基づいて作られたツールなので、起動したはいいけどなにしていいのやら、という状態にもなるかと思います。

ここでは、簡単なサンプルを Step by Step で通しで開発してみて、それを通して、SL2 の特有概念について解説していきたいと思います。

説明するトピックは以下の通りです。

  • Part 1. 最も簡単な Silverlight 2 アプリ開発
    • StackPanel による画面の組み立て
    • Hello World SL2 アプリの開発
    • XML Web サービスの呼び出し
  • Part 2. Expression Blend との連携
    • Blend による画面デザイン方法
    • リキッドデザイン画面の作成
  • Part 3. 高度な Silverlight 2 アプリ開発
    • ListBox への一覧表示
    • コンテンツモデルによるボタンの変更
    • レンダリング変形機能の活用

なお、今回のサンプルはすべてβ2ベースで書かれています。(製品版だと動かないところがあるかもしれませんが、そこは頑張ってください、ということで……;) また、前提知識として、ASP.NET や LINQ に関する基本的な知識はあるものとして解説を進めます。不明な点がある場合には、関連する資料を調べてみてください。

……では今から原稿書き始めます。:-)
というかもろもろ初めての挑戦なので、画像のアップとかどうやるんだろう……状態です(笑)。