ContentElement.CaptureMouse Method ()
Attempts to force capture of the mouse to this element.
Assembly: PresentationCore (in PresentationCore.dll)
To be captured, an element must be enabled. Check whether IsEnabled is true before you call .
If calling IsMouseCaptured is also true.returns true, then
If calling GotMouseCapture and IsMouseCapturedChanged events are raised, with RoutedEventArgs.Source in the event data reported as the element where the method is called. If you force capture, you might interfere with existing captures—especially with captures that relate to drag-and-drop with the mouse.returns true, then the
To clear mouse capture from all elements, call Mouse.Capture with the element parameter provided as null.
The following example captures the mouse or releases capture, based on whether the mouse is already captured by the element. Note that this example casts the prospective capture target element to the IInputElement interface, and is thus initially calling the IInputElement.CaptureMouse method. Casting to IInputElement is a technique that is useful if you are unsure whether the element you want to have capture the mouse is a UIElement or a ContentElement. The interface cast and the interface method call then calls the appropriate type-specific CaptureMouse implementation internally without requiring a trial cast to either UIElement or ContentElement. This same casting technique works for other members that IInputElement defines, for instance many of the input-related events, and other input-related methods.
Private Sub CaptureMouseCommandExecuted(ByVal sender As Object, ByVal e As ExecutedRoutedEventArgs) MessageBox.Show("Mouse Command") Dim target As IInputElement = Mouse.DirectlyOver target = TryCast(target, Control) If target IsNot Nothing Then If Not target.IsMouseCaptured Then Mouse.Capture(target) Else Mouse.Capture(Nothing) End If End If End Sub
Available since 3.0