2012-06-13 10 views
0

我正在創建一個日誌系統(在應用程序「外部」),記錄應用程序上的所有點擊。我設置了一個PreFilterMessage函數,它檢測到鼠標點擊,但我找不到被點擊的控件/元素。WPF在鼠標下查找控件,無需修改應用程序

我試過Mouse.DirectlyOver,但元素總是null。 我也試過​​,但我沒有Visual進行搜索。

我無法訪問應用程序內部:僅適用於Main方法(使用Application.Run(new MainForm());和我的Application.AddMessageFilter(new Logger());)。

有沒有人有一個想法(或四處走走)如何獲得應用程序中點擊控制(在.net 3.5中)?

回答

3

我一直在使用一個叫做Snoop的驚人的小應用程序,現在我認爲它完全符合你的要求,它是開源的(C#),如果你能找到它,它可能對你有用作品。 (所有WPF開發應該得到這個沒有,我不上史努比工作笑)

http://snoopwpf.codeplex.com/

+0

探聽工作注入了自己組裝成窺探的過程中,允許你使用'VisualTreeHelper.HitTest'和這樣。我認爲這是一個很好的起點。 –

相關問題