/// <summary> /// Called when mouse moves over right border /// </summary> /// <param name="source">Event source</param> /// <param name="args">The <see cref="System.Windows.Input.MouseEventArgs"/> instance containing the event data</param> private void OnRightBorderMouseMove(object source, MouseEventArgs args) { if ((!RightBorder.IsMouseCaptured) && IsResizing) { RightBorder.CaptureMouse(); } if (IsResizing) { double position = args.GetPosition(this).X; if (System.Math.Abs(position) < 10) { return; } if (position > 0) { Width = position; } else if ((position < 0) && (ActualWidth > MinWidth)) { position = (ActualWidth + position < MinWidth) ? MinWidth - ActualWidth : position; Width = ActualWidth + position; } } }