2013-02-19 74 views
0

我從外部框架獲得了帶有XAML Elements的Canvas,因此Canvas就像是一個黑盒子。如果我按下一個控件,事件會發生在EventHandler(object sender, EventArgs e) ......我確實需要在我點擊的位置顯示一個Popup控件...WinRT - 手指/鼠標位置

現在我在質疑自己在哪裏可以獲得位置我點擊從?!?? 有沒有簡單的方法來獲得位置?

回答

3

您的問題似乎有很多未知數 - 例如,您沒有提到引發了什麼事件,但您可以獲取事件的發件人並將其投射到UIElement或其他預期類型,那麼你可以調用這樣的東西來提取元素的位置。

var position = element 
    .TransformToVisual(Window.Current.Content) 
    .TransformPoint(new Point()); 

爲了讓觸摸或鼠標按鍵的實際位置 - 你可以嘗試訂閱到PointerPressed事件基礎畫布上,然後用你得到的位置,或者如果事件替換new Point()在上面的代碼不會冒泡(您的處理程序不會被調用) - 您可以導航可視化樹(使用VisualTreeHelper)並嘗試在該Canvas的子元素上訂閱該事件。

+0

終於我得到了我的指針,我在那裏按:)現在我在質疑自己如何將我的面板放置在指針座標系的網格中。我已經得到了相對於我的網格的指針。 – JuHwon 2013-02-27 22:49:15