PictureBox没有落在正确的坐标上

时间:2013-06-23 15:24:11

标签: c# .net winforms drag-and-drop

所以我试图将pictureBox移动到面板上。问题是图片框没有落在鼠标的坐标上,而是落在其他地方。

    private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
    {
        pictureBox1.DoDragDrop(pictureBox1,DragDropEffects.Copy);
    }

    private void panel1_DragEnter(object sender, DragEventArgs e)
    {
        e.Effect = DragDropEffects.Copy;

    }

    private void panel1_DragDrop(object sender, DragEventArgs e)
    {
        e.Effect = DragDropEffects.Copy;
        pictureBox1.Location = new Point(e.X,e.Y);
    }

我的代码出了什么问题?

1 个答案:

答案 0 :(得分:2)

e.Xe.Y代表屏幕坐标,似乎您正在寻找客户端坐标。

pictureBox1.Location = panel1.PointToClient(new Point(e.X, e.Y));