代码之家  ›  专栏  ›  技术社区  ›  Totty

如何强制控件不向树上传递单击事件?WPF C#

  •  2
  • Totty  · 技术社区  · 17 年前

    是否可以将网格或其他容器控件设置为某种事件坝?所以,当任何事件,特别是左键单击,在它里面开始的时候,它们会停止在那个控件上,不再继续?

    2 回复  |  直到 17 年前
        1
  •  6
  •   Arcturus    17 年前

    PreviewMouseDown是你的朋友。。。

    所有事件首先在预览状态下从根到叶进行隧道传输,然后在实际事件情况下从叶到根进行处理。。。

    所以PreviewMouseDown在按钮之前处理网格,而MouseDown事件在网格之前处理按钮。。。

    希望这有助于。。。

        2
  •  1
  •   Berkshire    17 年前

    您应该能够扩展您想要的任何控件(假设它不是密封的)。在扩展类中,可以重写click事件并将其吞并(不要将其传递给基类)。