我在拖放操作期间使用CaptureMouse()以确保我不会错过MouseUp事件,但这似乎可以防止任何鼠标事件到达我的Canvas上的任何其他对象.这意味着我的基于IsMouseOver的触发器不起作用,但我需要它们来指示可以删除对象的有效位置.
我这样做错了,还是有办法确保我的Canvas上的所有东西都能得到鼠标事件?
元素是画布的SubTree的一部分吗?或在画布之外?如果它们在那之内,你可以使用Capture方法捕获CaptureMode.
Mouse.Capture(elementToCapture, CaptureMode.SubTree);
或者,您应该查看DragDrop类并考虑使用Drop事件?