Я делаю пользовательский элемент управления с панелью. Я хочу иметь возможность перетаскивать его, поэтому я реализовал это в событии MouseDown моего элемента управления. Но я хочу, чтобы эта штука реагировала, когда вы начинаете перетаскивать, чтобы дать пользователю небольшую обратную связь. Так что в MouseDown даже меняю цвет. Затем я хочу изменить его обратно в событии MouseUp.
Мой элемент управления не установлен в VS2008, а просто класс, который я написал, который я создаю во время выполнения (я не знаю заранее, сколько мне нужно и так далее). Теперь мой элемент управления предоставляет событие MouseDown, чтобы его можно было перетаскивать. Когда я подписываюсь на это событие из родительского приложения, чтобы фактически выполнить перетаскивание, мой элемент управления не перерисовывается в его событии MouseUp! На самом деле MouseUp никогда не вызывается. Если, с другой стороны, я не подписываюсь на событие в родительском приложении, оно работает так, как задумано.
В чем дело? Прерывает ли родитель поток, чтобы событие MouseUp никогда не срабатывало в моем элементе управления? Как мне обойти это?