Map正在从MapItemsControl元素捕获Tap事件

本文关键字:Tap 事件 元素 MapItemsControl Map | 更新日期: 2023-09-27 18:28:38

我的Windows应用商店应用程序中有一个Bing Map控件。我使用地图的Tapped事件在选定的位置放置一个Pushpin。

我的地图还包含一个带有一些可点击元素的MapItemsControl。实际上,它们是一些图钉,点击后会显示弹出窗口。

问题是,当我点击这些图钉中的任何一个时,Map的Tapped事件也会被触发。

我还注意到,当这种情况发生时,所有元素都会再次渲染,在视觉元素上产生一种奇怪的行为。

知道为什么会发生这种情况吗?如果Tap发生在其他元素上,我如何避免Map捕捉到Tapped事件?

Map正在从MapItemsControl元素捕获Tap事件

在图钉的点击事件处理程序中,告诉事件它已经被这样处理了:

Pin.Tapped += (s,e)=>{
    e.Handled = true;
};

这应该可以阻止它冒泡到地图上。

此外,如果您只想让用户在启用该功能时在地图上添加图钉,您也可以添加和删除点击事件。