WPF 獲取滑鼠指標下的元素

2021-09-19 21:12:16 字數 780 閱讀 4385

原文:

[wpf]獲取滑鼠指標下的元素

[wpf]獲取滑鼠指標下的元素

周銀輝以前寫過一些getelementundermouse之類的函式,要用到座標換算而顯得有些麻煩(特別是當元素有***transform的時候)

今天看到mouse類居然有乙個directlyover屬性,可以獲得滑鼠下的元素, 很奇怪,我的msdn文件以及vs2008智慧型提示中都沒有顯示該屬性,但反編譯一下可以看到。

但必須注意到的一點是,wpf控制項是由各個元素復合而成的,但mouse類可不知道這概念,所以不要期望它為了返回乙個button,其很可能會返回button的visualtree中的textblock等,所以,如果我們加上如下的方法就完美了:

public

static

t findvisualparent

<

t>

(uielement element) 

where

t : uielement

parent 

=visualtreehelper.getparent(parent) 

asuielement;

}return

null;}

兩者結合一下,我們的getelementundermouse方法便可以如下書寫:

public

static

t getelementundermouse

<

t>

() where

t: uielement

WPF 獲取滑鼠指標下的元素

wpf 獲取滑鼠指標下的元素 周銀輝以前寫過一些getelementundermouse之類的函式,要用到座標換算而顯得有些麻煩 特別是當元素有 transform的時候 今天看到mouse類居然有乙個directlyover屬性,可以獲得滑鼠下的元素,很奇怪,我的msdn文件以及vs2008智慧型...

Wpf 滑鼠拖動元素例項

1.wpf中滑鼠捕獲和釋放 以矩形為例 建立滑鼠捕獲 mouse.capture rectone 釋放滑鼠捕獲 rectone.releasemousecapture 2.wpf中在定位布局canvas下獲取或設定元素的位置 在指定元素的滑鼠事件中例如,mouseleftbuttondown,mou...

WPF 自定義滑鼠指標

wpf 自定義滑鼠指標 周銀輝看看wpf cursor類的兩個建構函式吧 public cursor stream cursorstream public cursor string cursorfile 恩,均要求用 ani 或 cur,無語啊,我要使用一張普通呢?或者甚至是在程式記憶體中動態生成...