如何停止事件传播到父控件?

时间:2019-06-04 23:56:52

标签: uwp

我有一个用户控件,其中的主控件是一个具有单击事件的网格,但是在此控件中,我有一个textview,单击时将具有其他功能,但是当您单击textview时,它将同时激活事件和网格,而且我找不到如何仅激活textview事件。

有什么方法可以仅在单击时激活TextView单击事件吗?

1 个答案:

答案 0 :(得分:0)

由于UWP Grid没有单击事件和TextView,因此您的问题令人困惑。因此,我不确定您是否真正在UWP平台上以及您的代码是否在C#中。无论如何,因为唯一的标签是关于UWP的,所以我将发布针对UWP平台的解决方法,以供您参考。请参见下面的代码:

 private void Grid_Tapped(object sender, TappedRoutedEventArgs e)
    {
        Debug.WriteLine("grid tapped");
    }

    private void TextBlock_Tapped(object sender, TappedRoutedEventArgs e)
    {
        e.Handled = true;
        Debug.WriteLine("textblock tapped");

    }

实际上,如您所见,如果在文本块中设置e.Handled = true,则route事件将仅由文本块处理。希望这是您真正需要的。