Честно говоря, существует более простой способ, при котором вы инициализируете глобальную логическую переменную, которая называется как угодно, в данном случае isMouseClicked
. На вашем контроле вы хотите разрешить перетаскивание вы идете на событие мыши вниз,
Убедитесь, что эти события являются вашими управляющими событиями, а не событием форм.
if (e.button == MouseButtons.left)
//this is where you set the boolean to true
Затем перейдите к событию перемещения мыши
if (isMouseClicked == true)
//You then set your location of your control. See below:
Button1.Location = new Point(MousePosition.X, MousePosition.Y);
При включении мыши обязательно установите isMouseClicked
на false
;