I have ellipses drawn on top of a canvas, I've registered a MouseLeftButtonUp on the Canvas, and I and want to get what ellipse was clicked using:
(Ellipse)e.Source
But e.Source is always the canvas, I also tried e.OriginalSource and also did the same thing with PreviewMouseLeftButtonUp, but still same result. Event arg is MouseButtonEventArgs. What am I doing wrong? also is there a way to check if there is a child element of a canvas at a specific point.
I just ran into this issue and this was the first answer to pop up. It was working for me on
MouseLeftButtonDown
but not onMouseLeftButtonUp
. This was because of a logic error I had made with capturing the mouse in myMouseDown
handler.MouseUp
events only fire on the element that is captured if you are capturing the element.I had the following line in my
MouseLeftButtonDown
handler:Changing that to the following fixed the problem: