WinForm Хостинг в WPF Mouse.getPosition не работает
У меня есть некоторый элемент (ZedGraph), размещенный в окне wpf. Я хочу получить координаты x и y моего курсора мыши. Это работает в остальной части окна, но как только я наведу курсор на Элементный Хост, числа замерзнут. Я уже выяснил, что Elementhost не передает события, но я не нашел рабочего решения этой проблемы.
заранее большое спасибо за любые подсказки по этой проблеме
1 ответ
Решение
Вы можете использовать событие MouseMove для окна вашей страницы. Пусть, например, имя окна страницы будет mainWindow, а именем элемента будет myElement1. Затем вы можете получить позицию XY вашего элемента и использовать ее в сравнении с позициями мыши XY, как в следующем примере:
private void mainWindow_MouseMove(object sender, MouseEventArgs e)
{
System.Windows.Point thepnt = new System.Windows.Point();
thepnt = e.GetPosition(myElement1);
if (((thepnt.X<=100)|| (thepnt.X > myElement1.Width)) || (thepnt.Y < 100))
{
//do something...
}
else
{
//do something else....
}
}
Надеюсь, что это поможет.