public static void Track(MouseEventArgs e) { if (_dragElement == null) { return; } if (e.LeftButton != MouseButtonState.Pressed) { _dragElement = null; return; } var diff = e.GetPosition(null) - _pt; if (Math.Abs(diff.X) < SystemParameters.MinimumHorizontalDragDistance && Math.Abs(diff.Y) < SystemParameters.MinimumVerticalDragDistance) { return; } DragDrop.DoDragDrop((FrameworkElement)e.Source, _dragElement, DragEffect); }
public static void SetClick(DragProcessor.DragElement dragElement, MouseButtonEventArgs e) { _pt = e.GetPosition(null); _dragElement = dragElement; }