private TranslateTransform transform = new TranslateTransform(); private void UserControl_MouseMove(object sender, MouseEventArgs e) { if (isInDrag) { var element = sender as FrameworkElement; currentPoint = e.GetPosition(null); transform.X += currentPoint.X - anchorPoint.X; transform.Y += (currentPoint.Y - anchorPoint.Y); this.RenderTransform = transform; anchorPoint = currentPoint; } } private void PopUp_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { var element = sender as FrameworkElement; anchorPoint = e.GetPosition(null); element.CaptureMouse(); isInDrag = true; e.Handled = true; } private void PopUp_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (isInDrag) { var element = sender as FrameworkElement; element.ReleaseMouseCapture(); isInDrag = false; e.Handled = true; } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)