protected override void OnMouseDown(MouseEventArgs e) { base.OnMouseDown(e); //scroll them down if (_rectScrollDown != RectangleF.Empty && _rectScrollDown.Contains(e.Location) && _allowScrollDown) { _currentScrollActionBegan = DateTime.Now; _currentScrollAction = ScrollActionUnderway.ScrollingDown; ScrollDown(); } //scroll them down if (_rectScrollUp != RectangleF.Empty && _rectScrollUp.Contains(e.Location) && _allowScrollUp) { _currentScrollActionBegan = DateTime.Now; _currentScrollAction = ScrollActionUnderway.ScrollingUp; ScrollUp(); } if (_allowScrollDown || _allowScrollUp) { var scrollBarMiddle = new RectangleF(_rectScrollUp.Left, _rectScrollUp.Bottom, 20, _rectScrollDown.Top - _rectScrollUp.Bottom); if (scrollBarMiddle.Contains(e.Location)) { _currentScrollActionBegan = DateTime.Now; _currentScrollAction = ScrollActionUnderway.ScrollDragging; ScrollToMouseLocation(); } } }
protected override void OnMouseUp(MouseEventArgs e) { base.OnMouseUp(e); _currentScrollAction = ScrollActionUnderway.None; }