У меня есть два полотна, расположенные друг к другу. Предполагается, что это будет своего рода рабочее пространство, в которое вы можете добавлять элементы, выбирать и перегруппировать их. Другой - просто вид собственности.
Что я хочу сделать, так это уметь рисовать прямоугольник в рабочей области. Пока пользователь удерживает кнопку мыши, прямоугольник будет отображаться. Если он отпустит кнопку, будут выбраны все элементы, находящиеся ниже прямоугольника. В настоящее время это хорошо работает с событиями MouseDown, MouseStillDown и MouseUp. Я рисую другой прямоугольник с затененным холстом в рабочей области, который будет трансформироваться при каждом событии MouseStillDown, и выбор будет происходить при событии MouseUp. Моя проблема заключается в том, что если пользователь удерживает кнопку мыши и перемещает ее на холст свойства, а затем отпускает кнопку, событие MouseUp из рабочей области не вызывается. Ни одно из свойств, так как отсутствует событие MouseDown. Поэтому, если пользователь отпускает кнопку, выбор не будет работать, а прямоугольник останется в рабочей области.
Есть ли возможность избежать этого? Или есть лучший способ определить область, выбранную пользователем с помощью мыши, удерживая левую кнопку мыши?