У меня есть UserControl, называемый myListItem, который входит в ListBox'es. При наведении мыши отображается всплывающее окно, и во всплывающем окне есть прокрутка, которую пользователь может использовать для прокрутки текста в представлении. Я сделал обработчик событий, который отображает всплывающее окно при входе мыши, но я немного боюсь, когда уходит мышь. Если мышь уходит во всплывающее окно, всплывающее окно должно оставаться на месте, но когда мышь оставит какой-либо другой способ, всплывающее окно должно быть отключено. Есть ли у вас какие-либо предложения по тому, как это решить? Я думаю, что будет способ выглядит немного как это:Тест, где MouseLeave() отправляется в
void MouseLeave(object sender, MouseEventArgs e) {
if(!e.Position.Intersects(itemPopUp.BoundingBox))
itemPopUp.IsOpen = false;
}
Приветствия
Nik
Привет, и спасибо за ваш ответ. :-) Я не думал о том, чтобы делать вычитание в MouseMove(). Если я правильно вас понимаю, вы предлагаете мне самим вычислять, а не использовать встроенные функции? –
Нет ли теста на хит, связанного с точкой? Что-то вроде этого возможно? MyPopup.HitTest (e.GetPosition (null)) –