ContentElement.ReleaseMouseCapture 方法

定义

如果此元素具有鼠标捕获,则释放该捕获。

public:
 virtual void ReleaseMouseCapture();
public void ReleaseMouseCapture ();
abstract member ReleaseMouseCapture : unit -> unit
override this.ReleaseMouseCapture : unit -> unit
Public Sub ReleaseMouseCapture ()

实现

示例

以下处理程序根据鼠标按钮状态捕获或释放鼠标捕获。 该示例演示如何将捕获的鼠标移动用于在 UI 中移动鼠标指针以外的其他用途。

private void MouseDownHandler(object sender, MouseButtonEventArgs e)
{
    ContentElement el = (ContentElement)sender;
    if (!el.IsEnabled) return;
    e.Handled = true;
    el.CaptureMouse();
    _point = e.MouseDevice.GetPosition(el); 
}

private void MouseUpHandler(object sender, MouseButtonEventArgs e)
{
    ContentElement el = (ContentElement)sender;
    if (!el.IsEnabled) return;
    e.Handled = true;
    el.ReleaseMouseCapture();
}
Private Sub MouseDownHandler(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
    Dim el As ContentElement = CType(sender, ContentElement)
    If Not el.IsEnabled Then
        Return
    End If
    e.Handled = True
    el.CaptureMouse()
    _point = e.MouseDevice.GetPosition(el)
End Sub

Private Sub MouseUpHandler(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
    Dim el As ContentElement = CType(sender, ContentElement)
    If Not el.IsEnabled Then
        Return
    End If
    e.Handled = True
    el.ReleaseMouseCapture()
End Sub

注解

如果此元素未保存捕获,则调用此方法不起作用。 请考虑在调用此方法之前检查其值 IsMouseCaptured

适用于

另请参阅