ContentElement.ReleaseMouseCapture メソッド

定義

この要素がマウス キャプチャを保持していた場合、キャプチャを解放します。Releases the mouse capture, if this element held the capture.

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

実装

次のハンドラーは、マウスボタンの状態に従って、マウスキャプチャをキャプチャまたは解放します。The following handler captures or releases mouse capture according to mouse button states. この例では、UIUIでマウスポインターを移動する以外に、キャプチャされたマウスの動きを別の目的で使用する方法を示します。The example shows how to use captured mouse movement for alternative purposes other than moving the mouse pointer in the UIUI.

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

注釈

この要素がキャプチャを保持していない場合、このメソッドを呼び出しても効果はありません。If this element did not hold the capture, calling this method has no effect. このメソッドを呼び出す前に、IsMouseCaptured の値を確認することを検討してください。Consider checking the value of IsMouseCaptured before you call this method.

適用対象

こちらもご覧ください