打ち合わせ帰りにお買い上げです。
WPF
前回のカラースライダーに続き、WPFのテストプログラムです。
Blendのヘルプにも載っているし既に色々なサンプルがあるんですが、今回は「RSS Reader」です。Blend(XAML)でのXMLの扱いやデータバインディング辺りがテーマになっています。
RSS Feedを読み込んで表示するだけならXAMLだけで完結できるんですが、今回はコンバータを使っているので、ソコだけC#も使っています。
Blend上ではこんな感じになっています。
rootのGridにはタイトルとディスクリプションを表示するTextBlockを配置します。さらにGridを配置していますが、ココがポイント。理由は後述するとして、そのGridにはタイトルを一覧表示するListBox、本文用のScrollViewer、エントリーURL用のTextBlockが配置してあります。(おまけでListBoxとScrollViewerのサイズを変更するGridSplitterも配置してあります。)
UIデザインはとりあえず度外視の方向で・・・
WPFの開発環境も整いBlendの使い方もなんとなく掴めたところで、ようやくテストアプリの制作です。
初めてのサンプルに選んだのはARGBのカラースライダー。特に理由はありません・・・

まずはUIから。Blend上ではこんな感じになってます。
Gridの上側にはサイズ固定のロゴを中央に配置。ウィンドウズサイズに合わせてエリアの大きさが変わります。
IllustratorのパスをXAMLに変換するためにプラグインを入れたんですが、なぜか複合パスがうまく変換できない・・・ 結局、DesignにAIファイルをインポートしてXAML出力。さらにBlendにインポートという手順を踏んでいます。
下側には高さを固定した2x2のGridを配置し、その中にARGB各チャンネル用のスライダが配置してあります。それぞれ0~255の値をとります。
デザインはひどいですが、とりあえずUI部分は完了です。
Hello World的なプログラムを作ろうかと思ったんですが、BlendだとTextBoxおいてF5ってだけだし、かといってXAML手書きっていうのも実用的じゃない。時間的にあまり余裕があるわけではないので、もう少しハードルを上げようとBlendをさわりはじめたんですが、今度はBlendの使い方がよく分からない・・・ サイトをのぞいてもWebばかりでBlendの情報がないし、本もまだ出ていない。
で、見つけたのがココ。

僕の中ではFlashやAIRの人なイメージがあったんですが、Blendのチュートリアルも公開されてるんですね。他にもWPF関連の情報をいろいろ公開されているようです。
AS3デビューしたことだしFlashをイジりたいところですが、WPFの開発案件が控えているということで事前勉強開始です。
目指せFlash Developerな僕にしてみると、開発ツールが何であれインタラクティブなコンテンツの作成というものには非常に興味があります。そんな訳で、3Dなサンプルなどを見た僕は興味津々です。しかし、.NETはおろかWindowsプログラミングというものをろくにしたことがない僕で大丈夫なんでしょうか・・・?
最終的にはXAML+C#を使ってWindowsアプリケーションを作るのでやっていけるのか心配なのですが、こんな機会もそうそうないので頑張ってみようと思います。

ということで、早速お勉強用の環境セッティングです。
この本によると、インストールの順番が非常に重要らしい。WPF開発に必要な各種ツールは
- .NET Framework 3.0 ランタイム
- Visual Studio 2005
- Windows SDK
- Visual Studio 2005 Extension
の順番でインストールする必要があるようです。(※初版が2007年4月10日なので、バージョン等が古い可能性があります。)
でも、MSのページでは、1と2の順番が逆なんだよね・・・? ココの順番はあまり関係ないってことですかね?