diff --git a/src/Shared/HandyControl_Shared/Controls/Block/ToggleBlock.cs b/src/Shared/HandyControl_Shared/Controls/Block/ToggleBlock.cs index c0909169c..02d0a271a 100644 --- a/src/Shared/HandyControl_Shared/Controls/Block/ToggleBlock.cs +++ b/src/Shared/HandyControl_Shared/Controls/Block/ToggleBlock.cs @@ -94,10 +94,21 @@ e.ChangedButton is MouseButton.Right && ToggleGesture.MouseAction is MouseAction e.ChangedButton is MouseButton.Middle && ToggleGesture.MouseAction is MouseAction.MiddleDoubleClick && e.ClickCount == 2) { + CaptureMouse(); ControlCommands.Toggle.Execute(null, this); } } + protected override void OnMouseUp(MouseButtonEventArgs e) + { + base.OnMouseUp(e); + + if (IsMouseCaptured) + { + ReleaseMouseCapture(); + } + } + private void OnToggled(object sender, ExecutedRoutedEventArgs e) { SetCurrentValue(IsCheckedProperty, IsChecked == true ? ValueBoxes.FalseBox : ValueBoxes.TrueBox);