UIElement.ReleaseMouseCapture Method
Releases the mouse capture, if this element held the capture.
Namespace: System.Windows
Assembly: PresentationCore (in PresentationCore.dll)
If this element did not hold the capture, calling this method has no effect. Consider checking the value of IsMouseCaptured before you call this method.
The following example is the parallel to the example given for CaptureMouse: it handles mouse button up to release mouse capture and re-enable moving the mouse.
private void MouseDownHandler(object sender, MouseButtonEventArgs e) { if (!Enabled) return; e.Handled = true; if (Keyboard.IsKeyDown(Key.F1) == true) { Reset(); return; } UIElement el = (UIElement)sender; _point = e.MouseDevice.GetPosition(el); // Initialize the center of rotation to the lookatpoint if (!_centered) { ProjectionCamera camera = (ProjectionCamera)_slaves[0].Camera; _center = camera.LookDirection; _centered = true; } _scaling = (e.MiddleButton == MouseButtonState.Pressed); if (Keyboard.IsKeyDown(Key.Space) == false) _rotating = true; else _rotating = false; el.CaptureMouse(); } private void MouseUpHandler(object sender, MouseButtonEventArgs e) { if (!_enabled) return; e.Handled = true; // Stuff the current initial + delta into initial so when we next move we // start at the right place. if (_rotating == true) _rotation = _rotationDelta * _rotation; else { _translate += _translateDelta; _translateDelta.X = 0; _translateDelta.Y = 0; } //_scale = _scaleDelta*_scale; UIElement el = (UIElement)sender; el.ReleaseMouseCapture(); }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.