Edit

Share via


UIElement.IsMouseCaptured Property

Definition

Gets a value indicating whether the mouse is captured to this element. This is a dependency property.

public:
 property bool IsMouseCaptured { bool get(); };
public bool IsMouseCaptured { get; }
member this.IsMouseCaptured : bool
Public ReadOnly Property IsMouseCaptured As Boolean

Property Value

true if the element has mouse capture; otherwise, false. The default is false.

Implements

Examples

The following example turns the mouse capture state on or off based on whether the mouse is already captured for the element.

If mouse capture is elsewhere, the mouse capture is set to that element. If the element had mouse capture, it is cleared by calling Mouse.Capture with a null input.

    private void CaptureMouseCommandExecuted(object sender, ExecutedRoutedEventArgs e)
    {
        MessageBox.Show("Mouse Command");
        IInputElement target = Mouse.DirectlyOver;

        target = target as Control;
        if (target != null)
        {
            if (!target.IsMouseCaptured)
            {
                Mouse.Capture(target);
            }
            else
            {
                Mouse.Capture(null);
            }
        }
    }
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

Remarks

Mouse capture state is related to in-process drag-and-drop operations.

Dependency Property Information

Item Value
Identifier field IsMouseCapturedProperty
Metadata properties set to true None

Applies to

See also