示例#1
0
 private static void EndDragControl(Point mousePosition)
 {
     if (_isDraggingControl)
         DoDragControl(mousePosition);
     DraggingControl?.InvokeDragEnd(mousePosition);
     DraggingControl = null;
     _isDraggingControl = false;
 }
示例#2
0
        private static void DoDragControl(Point mousePosition)
        {
            if (DraggingControl == null)
                return;

            int deltaX = mousePosition.X - _dragOriginX;
            int deltaY = mousePosition.Y - _dragOriginY;

            DraggingControl.X = DraggingControl.X + deltaX;
            DraggingControl.Y = DraggingControl.Y + deltaY;
            DraggingControl.InvokeMove(deltaX, deltaY);
            _dragOriginX = mousePosition.X;
            _dragOriginY = mousePosition.Y;
        }