如何在Windows窗体中拖放图片框?

时间:2016-01-26 07:09:19

标签: c# winforms drag-and-drop

我在C#的WinForms中创建了一个PictureBox,现在我想让它成为Drag and Droppable,点击并按住PictureBox并在表单中的某个位置释放它。并且位置应设置为我丢弃PictureBox的位置。 我尝试过DragDrop事件,MouseUp,MouseDown,MouseMove,但是失败了,我需要一个正确的方法。我不想将PictureBox移到另一个PictureBox

1 个答案:

答案 0 :(得分:1)

您可以使用MouseDown和MouseMove上的光标位置:

private void picBox_MouseDown(object sender, MouseEventArgs e) 
{
        mousePosition = e.Location;
}
private void picBox_MouseMove(object sender, MouseEventArgs e) 
{
        if (e.Button == MouseButtons.Left) 
        {
            int dx = e.X - mousePosition.X;
            int dy = e.Y - mousePosition.Y;
            picBox.Location = new Point(picBox.Left + dx, picBox.Top + dy);
        }
}