Я создал пользовательский элемент управления панели и хотел бы, чтобы он реагировал на событие перемещения мыши, однако, когда я добавляю обработчик события следующим образом:
Private Sub FloatingPanel_MouseMove(ByVal sender As Object,
ByVal e As MouseEventArgs) Handles Me.MouseMove
End Sub
Он реагирует только при моем перемещенииНаведите курсор мыши на один из дочерних элементов управления на панели.Мне нужно, чтобы он реагировал всякий раз, когда я перемещаю мышь в любое место внутри пользовательской панели.
Обновление: Я нашел следующий вопрос, который дал мне подсказку:
WPF - как лучше всего реализовать панель с перетаскиваемыми / масштабируемыми дочерними элементами?
Я могу получать события мыши на самом GraphCanvas, только если он имеет фон в точке
Это заставило меня просто установить фон, который, кажется, решил проблему ... Мой вопрос сейчас, почему?Почему я должен установить фон для получения события mousemove?
Обновление 2: Следующий код в конечном итоге решил проблему (см. Ответ Кента ниже).
Protected Overrides Function HitTestCore(ByVal hitTestParameters As System.Windows.Media.PointHitTestParameters) As System.Windows.Media.HitTestResult
Return New PointHitTestResult(Me, hitTestParameters.HitPoint)
End Function
Спасибо, Мэтт