WPFの初期セミナーを受けた時、私はものすごくアバウトな質問をしてしまいました。「FLASHと同等の表現が可能か?」という質問で、回答は「できる」だったのですが、これが私の認識をいろいろと迷わす事になりました。
FLASHはactionscriptという簡単なスクリプトを持っており、動的にコンテンツの変化に応じた動きを設定するようなアニメーションでもデザイナーが簡単に設定できたのです。
前述の質問を投げたとき、私はWPFのデザイナーの範囲はXAMLまで、という解釈でした。ということは、つまりXAMLだけでFLASHのようなリッチな表現が可能と思い込んでしまったのです。
あの質問が悪かったと後になって悔やんだのですが、とにかく結論をいうと、
XAMLだけでは動的なアニメーションは設定できません。
理由:XAMLのアニメーションは必ず値の出発点と終了点を持たせる必要があるから。
ということです。いくらバインドさせても、バインドされた側が必ず値を持っている必要がある。
コンテンツに応じて高さが変わるようなコントロールの高さをアニメーションするような事はできません。
もちろんプログラムに記述すれば済む話ですけどね。そうなるとデザイナーとプログラマーの作業分離って何?ってなります。
まあ、まだ調査が必要でしょうけど、、
iPhoneからの投稿