2013年05月12日

WPFサンプル:領域にマウスポインタが入ったかどうかを検出する

   このエントリーをはてなブックマークに追加 Clip to Evernote
2Dグラフィックスの話題も一段落したので、また初歩的な話題に戻ってWPFのサンプルコードの紹介を続けていこうと思います。

今回は、WinddowsForms にもある、MouseEnter, MouseLeave イベントを使ったサンプルコードを示します。
MouseEnter、MouseLeaveイベントは、UIElementクラスに存在しますので、Panel、Imageなども含め、すべてのUIElementの派生クラスで利用できます。
ここでは、Rectangleの領域にマウスが入った時と領域を出た時に処理をするコードを書いてみました。
MouseEnter1 MouseEnter2

まずはXAML



特に特筆すべき点はありません。
以下、C#のコードです。

MouseEnterイベントハンドラでは、現在のFillプロパティの値を記憶し、 Colors.BrownでRectangleを塗りつぶしています。
MouseLeaveでは、先ほど記憶したFillの値で、Rectangleの色をもとに戻しています。


これと同じことは、PropertyTriggerを使っても実現可能です。
機会があれば紹介したいと思います。



 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/52318830