WPF Get Element (s) под мышью

Есть ли способ с WPF получить массив элементов под мышью на событии MouseMove?

Из раздела « WPF Unleashed », стр. 383:

Визуальное тестирование может информировать вас обо всех Visual которые пересекают местоположение, […] вы должны использовать […] метод [VisualTreeHelper.]HitTest который принимает делегат HitTestResultCallback . Прежде чем эта версия HitTest вернется, делегат вызывается один раз для каждого соответствующего Visual , начиная с самого верхнего и заканчивая самым нижним.

Подпись такого обратного вызова

 HitTestResultBehavior Callback(HitTestResult result) 

и он должен вернуть HitTestResultBehaviour.Continue для получения последующих обращений, как показано ниже (со связанной страницы в MSDN):

 // Return the result of the hit test to the callback. public HitTestResultBehavior MyHitTestResult(HitTestResult result) { // Add the hit test result to the list that will be processed after the enumeration. hitResultsList.Add(result.VisualHit); // Set the behavior to return visuals at all z-order levels. return HitTestResultBehavior.Continue; } 

Для получения дополнительной информации обратитесь к документации MSDN для VisualTreeHelper.HitTest .

Вы также можете попробовать использовать свойство Mouse.DirectlyOver, чтобы получить самый верхний элемент, находящийся под мышью.

Можете ли вы использовать VisualTreeHelper.HitTest ?

http://lukieb.blogspot.com/2008/07/visualtreehelperhittest.html

Interesting Posts

Встроенный алгоритм .Net для округления значения до ближайшего 10 интервалов

В чем разница между переменной, объектом и ссылкой?

JSP-файл не отображается в веб-приложении Spring Boot

Установка нескольких переменных среды в оболочке, созданной через пакетный скрипт Windows

Экран печати в Windows 7 с клавиатурой Apple

Как правильно использовать StringBuilder

Установщик Windows удаляет файл с версией во время обновления продукта, вместо того, чтобы понижать его

IP-адрес в телефоне Windows 8

Почему JScrollPane в JOptionPane не показывает весь его контент?

Событие jQuery: обнаружение изменений в html / text div

Рекомендации для компонента .NET для доступа к почтовому ящику электронной почты

Ни BindingResult, ни обычный целевой объект для bean-имени, ansible как запрос attr

Как определить, когда переменная изменяет значение

Какова техническая причина, по которой «lookbehind assertion ДОЛЖЕН быть фиксированной длиной» в регулярном выражении?

Список приложений в процессе

Давайте будем гением компьютера.