private Point mouse_offset;

        private void label1_MouseDown(object sender, MouseEventArgs e)
        ...{
            mouse_offset = new Point(-e.X, -e.Y);//

        }

        private void label1_MouseMove(object sender, MouseEventArgs e)
        ...{
            ((Control)sender).Cursor = Cursors.Arrow;//设置拖动时鼠标箭头
            if (e.Button == MouseButtons.Left)
            ...{
                Point mousePos = Control.MousePosition;
                mousePos.Offset(mouse_offset.X, mouse_offset.Y);//设置偏移
                ((Control)sender).Location = ((Control)sender).Parent.PointToClient(mousePos);
            }

        }

参考:http://www.cnblogs.com/DS-CzY/archive/2007/06/30/801377.aspx

posted on 2010-11-03 13:36  傅红血  阅读(532)  评论(0)    收藏  举报