views:

1169

answers:

1

I have the following situation

I handle when the left mouse button is pressed in my Silverlight app and do some things while the mouse is held down and the mouse moves. When the left button is released, I turn off the flag that's telling it to do the stuff and the mouse movement handler then no longer does the stuff.

The problem is: if the user is in the control area, pushes the left button down and moves out of the control area, then releases the button and reenters, the MouseLeftButtonUp event never fires and the processing continues until the user clicks the mouse.

My temporary fix was to turn the mouse flag off on MouseLeave but that's not really what I'm going for. I'd like to check to see the mouse's left button state in the MouseEnter event, but I don't know of a way to do that.

Does anyone know of a way I can access the mouse button state outside of the press events in Silverlight 3? Thanks,

Update

After thorough research, it doesn't look like this is possible in Silverlight 2 (and probably 3.) I found this link. If anyone knows of a workaround, please let me know.

+2  A: 

What you need to do can be accomplished with the UIElement.CaptureMouse method:

http://msdn.microsoft.com/en-us/library/system.windows.uielement.capturemouse%28VS.95%29.aspx

When a UIElement has captured the mouse, it will continue to receive mouse events even if the mouse leaves the Silverlight control.

KeithMahoney

related questions