1. 程式人生 > >獲得控制元件的螢幕座標

獲得控制元件的螢幕座標

原文: 獲得控制元件的螢幕座標



 在WPF控制元件(TreeviewControl)中彈出一個選單,選單的位置需要定位到滑鼠點選的位置,

開始時使用了MouseButtonEventArgs的GetPosition方法,

private static void Border_MouseLeftButtonDown ( object sender, MouseButtonEventArgs e )

利用滑鼠鍵觸發的方法中處理sender和e中的各種 FrameworkElement 獲得滑鼠相對位置,

再加上控制元件本身的位置,但總是不能正確彈出選單的位置,沒辦法到網上查資料,最後嘗試了這一句,沒想到這麼簡單

System.Drawing.Point p = System.Windows.Forms.Control.MousePosition;就直接定位到了滑鼠的位置上了,大概的原理是

System.Windows.Forms.Control.MousePosition能夠找到活動的窗體的相對座標吧,不管怎樣,除錯過了,能在正確位置彈選單了。