c# wpf how to make drag drop more pixelate

Viewed 77

Hello. I working a project in visual studio 2022. i created a canvas and i have a drag drop system. but i need to drag drop process more pixelate movement. if i not tell, look the this gif, maybe more easier way. someone help me?

my code is :

private void actionmodel_PreviewMouseDown(object sender, MouseButtonEventArgs e)
    {
        if (ismove == 0)
        {
            ismove += 1;
        }
        this.dragObject = sender as UIElement;
        this.offset = e.GetPosition(this.savedCanvas);
        this.offset.Y -= Canvas.GetTop(this.dragObject);
        this.offset.X -= Canvas.GetLeft(this.dragObject);
        this.savedCanvas.CaptureMouse();
    }

    //canvasmain üzerinde fare hareket etti ise
    private void canvasmain_PreviewMouseMove(object sender, MouseEventArgs e)
    {
        if (ismove == 1)
        {
            ismove = 2;
        }
        if (this.dragObject == null)
            return;
        var position = e.GetPosition(sender as IInputElement);
        Canvas.SetTop(this.dragObject, position.Y - this.offset.Y);
        Canvas.SetLeft(this.dragObject, position.X - this.offset.X);
    }

    //canvasmain üzerinde fare tuşu kalktıysa
    private void canvasmain_PreviewMouseUp(object sender, MouseButtonEventArgs e)
    {
        this.dragObject = null;
        this.savedCanvas.ReleaseMouseCapture();
        if (ismove == 2)
        {
            Diary.Items.Add("Hareket Ettirildi");
            ismove = 0;
        }
    }

gif : https://drive.google.com/file/d/1fHE2wVRFmPL8k2ViM3gkaNOoKl-ovvbd/view?usp=s

0 Answers
Related