我在窗体上放置了一个放在控件下的面板。我将使用该面板绘制从黑色到透明的渐变,以模拟从控件投射的阴影。但是,面板下方还有其他控件,面板将捕获其下方面板的咔嗒声。
如何让点击“通过”面板并转到其下面的面板?我宁愿不覆盖整个消息proc。我也对如何做阴影的其他建议持开放态度。
答案 0 :(得分:1)
不幸的是,点击不会像这样(即如果你在表单上设置了一个点击处理程序并在其上放了一个按钮,当你点击按钮时,只有按钮点击处理程序被触发)。您可以做的是级联点击事件,如下所示:
topPanel_OnClick() { bottomPanel_OnClick(topPanel, EventArgs.Empty); }
显然会增加噪音,但它比点击的“下降”行为更好,这会引发一系列事件。
答案 1 :(得分:1)
在WPF中,您可以将IsHitTestVisible
设置为false以完成您想要的操作,但是使用winforms,每个控件都有自己的窗口,因此您必须自己冒泡事件。