Your SlideShare is downloading. ×
0
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
それではBehaviorでも使ってみましょうか。
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

それではBehaviorでも使ってみましょうか。

1,851

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,851
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. それではビヘイビアでも使ってみましょうか 森 博之(もり ひろゆき) RIAアーキテクチャ研究会 極東IT-Engineers代表 Microsoft MVP – Development Platform Silverlight
  • 2. 自己紹介• 森 博之(もり ひろゆき) – 極東IT-Engineers代表 • http://www.kit-eng.com – Blog • もり ひろゆきの日々是勉強 – http://moriblog.kit-eng.com • Twitter
  • 3. Agenda• ビヘイビアって?• ビヘイビアの種類について – トリガー – アクション – ビヘイビアー
  • 4. Behavior [名]• (人の)行動(様式[パターン])、態度、 挙動、振る舞い、言動、素行、そぶり、 行状、非どころの行い• (機械・ソフトウェアなどの)動き、動 き具合、動作、調子、反応、作用• (物体・物質などの)性質• (薬などの)作用、反応• (生物の)行動、修正
  • 5. ビヘイビア(Behavior)• Expression Blend SDKの機能 – Silverlight SDKや.NET Frameworkにない機能 – WPFのTriggerの代替に考えられた実装パター ン →現在は本家のWPFに逆輸入 – 添付プロパティのメカニズムを利用して Interactionクラスで実現されている機能• Expression Blend 3にはじめて搭載され る – Silverlight3と同時リリース
  • 6. WPFのTriggerって?• FrameworkElement・Style・ControlTemplate・ DataTemplateなどの挙動を監視し、Setterや Actionを実行する – 監視する挙動(TriggerBaseの派生クラス) • プロパティの変化(Trigger, MultiTrigger) • データの変化(DataTrigger, MultiDataTrigger) • 発生するイベント(EventTrigger) – Setterクラス • プロパティ設定 – 実行するアクション(TriggerActionクラスの派生ク ラス) • BeginStoryboardActionなどのストーリーボード操作 • SoundPlayなどの音声ファイルの再生
  • 7. 添付プロパティって? • XAMLの機能のひとつ • オブジェクト間の通信をサポートする機 能 • static readonly DependencyProperty TargetProperty =public 添付プロパティの多くは依存関係プロパ DependencyProperty.RegisterAttached( ティ “Target”, typeof(string), typeof(SampleClass), new FrameworkPropertyMetadata(string.Empty,));public static void SetTarget(UIElement attachedElement, string value){}public static string GetTarget(UIElement attachedElement){}
  • 8. コードで添付プロパティを指定する• XAMLおよびC#で表現<Canvas> <Button Canvas.Top=“100” /></Canvas>var c = new Canvas();var b = new Button();c.Children.Add(b);Canvas.SetTop(b, 100);
  • 9. 添付プロパティでTriggerって?• Expression Blend SDKのIteractionクラ ス• 以下のメンバーに注目 – GetBehaviorsメソッド – GetTriggersメソッド
  • 10. GetTriggersメソッド• 添付プロパティ• TriggerCollection型の戻り値を持つメ ソッド – Interactionクラスで管理されている Collectionオブジェクト→コレクション構文• TriggerCollectionクラス – TriggerBaseオブジェクトのコレクション
  • 11. TriggerBaseクラスって?• インタラクショントリガーの抽象クラス• ~Triggerと名前の付くクラスは TriggerBaseを継承している• つまり、Iteraction.Triggersは複数の TriggerBaseの派生クラスを指定し保持す ることができる添付プロパティ
  • 12. TriggerBaseクラスの機能• 主要メンバー – フィールド • protected object AssociatedObject; – 添付されたオブジェクトが格納されている – プロパティ • public TriggerActionCollection Actions; – TriggerActionのコレクション – メソッド • protected void OnAttached(); – 添付時 • protected void OnDetaching(); – 添付解除時 • protected void InvokeActions(); – Actionsに指定されたオブジェクトのActionメソッドを呼び出し
  • 13. 代表的なトリガー• EventTrigger – 指定オブジェクトのイベントを監視• DataTrigger – データの変化を監視• PropertyChangedTrigger – プロパティの変化を監視• KeyTrigger – キー入力を監視
  • 14. TriggerActionは・・・• 主要メンバー – プロパティ • protected object AssociatedObject; – メソッド • Protected abstract void Invoke(object parameter);• 挙動 – AssociatedObjectに対してActionを実行でき る – 異なる対象にActionを実行する場合は TargetedTriggerAction利用する
  • 15. となるとビヘイビアーって?• 添付プロパティ• つまりGetBehaviorメソッド – Trigger同様、Itractionクラスで管理されて いるコレクションを返すメソッド• BehaviorCollection – Behaviorオブジェクトのコレクション
  • 16. Behavior?• その他名前のとおり、添付されたオブ ジェクトもしくは指定のあったオブジェ クトに対しての振る舞いを追加したりカ スタムすることができるオブジェクト• Triggerのようにきっかけの指定は必要な い→ただし、Triggerのようにふるまわせることも可能
  • 17. まとめ• ビヘイビアとは – 添付プロパティを利用して振る舞いや簡単な 処理を実行するメカニズム – Expression Blend SDKのみの機能 • Expression Blend SDK単体のダウンロードも可能 – 応用するといろんなことができますよ♪
  • 18. Microsoft Innovation Academy• マイクロソフト大手町テクノロジーセンターで実施 – Visual Studio 2010ではじめるWPFプログラミング入門 • 基礎編 12/8 • 応用編 12/9 – 開発者のためのSIlverlight4プログラミング • 前編 • 中編 • 後編 – Windows Phone プログラミング入門 • UI基礎編 12/6 • Phone機能編 12/7 – 開発者のためのWindows Azure • 入門 • 実践編

×