Здесь, похоже, есть похожий вопрос, но с «противоположной» проблемой (он не хотел, чтобы события мыши фиксировались).
У меня есть форма с панелью. Окно не имеет границ и имеет точный размер панели (для всех намерений и целей, как будто панель «свободно перемещается»). Я могу установить BackColor панели в SystemColors.Control, а затем установить прозрачность окна окна на то же самое. Это работает в том смысле, что достигается желаемый эффект (прозрачность), но панель больше не может захватывать события мыши (что жизненно важно для функциональности)!
Есть ли другой способ обойти это или способ повторно включить захват мыши?
Я попытался переопределить OnPaintBackground и выполнить noop, но это не позволило добиться реальной прозрачности, поскольку он не обновляет фон после каждого тика (поэтому все, что находится за панелью при первоначальном отрисовке, остается там независимо от того, переместить панель или иным образом обновить ее). Это, однако, позволило панели захватывать события мыши.
Это не так уж и сложно на данном этапе проекта, но я наткнулся на проблему во время быстрого прототипа, и это начинает меня раздражать. Если у кого-то есть указатели, они будут очень благодарны.