Click here to Skip to main content
11,803,019 members (77,900 online)
Rate this: bad
Please Sign up or sign in to vote.
See more: C# Mouse
Hi, I am making a simple 2D map maker for games. Simply the user clicks on a button that will show a openfiledialog. The user chooses a file and is loaded in a PictureBox. Then if the user wants to add it to the game world(panel) he/she clicks on the add button and the panel will load the picture. What I am having trouble with is being able to drag and drop the image within that panel. I will appreciate your help.

windows 7   visual C#   winform

Posted 15-Feb-12 5:32am
Edited 15-Feb-12 11:42am
Rate this: bad
Please Sign up or sign in to vote.

Solution 2


I think this can help:

private bool isPictureReadyToDrag;
private void SetPosition()
     MyPictureBox.Location = new Point(MousePosition.X - this.Left - MyPictureBox.Width / 2, MousePosition.Y - this.Top - MyPictureBox.Height);
private void MyPictureBox_MouseMove(object sender, MouseEventArgs e)
     if (isPictureReadyToDrag)
private void MyPictureBox_MouseUp(object sender, MouseEventArgs e)
     isPictureReadyToDrag = false;
private void MyPictureBox_MouseDown(object sender, MouseEventArgs e)
     isPictureReadyToDrag = true;
angelllll at 15-Feb-12 18:18pm
Both of your solutions were helpful, Great examples from both of you.

Shahin Khorshidnia at 15-Feb-12 18:36pm
Thank you.
khushwant sahota at 15-Feb-12 20:09pm
any time...cheers

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 KrunalRohit 356
1 OriginalGriff 335
2 CPallini 270
3 F-ES Sitecore 270
4 Sergey Alexandrovich Kryukov 234
0 OriginalGriff 2,950
1 Maciej Los 1,910
2 KrunalRohit 1,862
3 CPallini 1,735
4 Richard MacCutchan 1,157

Advertise | Privacy | Mobile
Web01 | 2.8.151002.1 | Last Updated 15 Feb 2012
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100