C#WPF-即使鼠标移动到子控件上,也会触发Canvas MouseMove事件
如何使C#WPF-即使鼠标移动到子控件上,也会触发Canvas MouseMove事件,wpf,events,canvas,mousemove,onmousemove,Wpf,Events,Canvas,Mousemove,Onmousemove,如何使CanvasMouseMove事件仅在我的鼠标位于Canvas和Canvas上方时触发 我有一个TextBox作为Canvas的孩子,当我的鼠标移动到TextBox上时,它仍然会触发,我希望这不会发生,例如,只有当鼠标在画布上移动时,才会触发该事件。您必须在画布PreviewMouseMove上收听该事件的预览版本,并将e.Handled=true。 看看这个网址 如何使画布MouseMove事件仅在我的鼠标位于canvas和canvas上方时触发 您无法阻止触发事件,但可以检查鼠标是否
Canvas
MouseMove
事件仅在我的鼠标位于Canvas
和Canvas
上方时触发
我有一个
TextBox
作为Canvas
的孩子,当我的鼠标移动到TextBox
上时,它仍然会触发,我希望这不会发生,例如,只有当鼠标在画布上移动时,才会触发该事件。您必须在画布PreviewMouseMove上收听该事件的预览版本,并将e.Handled=true。
看看这个网址
如何使画布MouseMove
事件仅在我的鼠标位于canvas
和canvas
上方时触发
您无法阻止触发事件,但可以检查鼠标是否直接位于事件处理程序中的画布
区域上,如果没有,则什么也不做:
private void Canvas_MouseMove(object sender, MouseEventArgs e)
{
if (Mouse.DirectlyOver == sender)
{
//your code...
}
//else, i.e. when the mouse moves over the TextBox or another child element, do nothing
}