为了账号安全,请及时绑定邮箱和手机立即绑定

使用 MapElementClick 事件控制特定地图元素 C#/UWP

使用 MapElementClick 事件控制特定地图元素 C#/UWP

C#
扬帆大鱼 2021-12-05 16:48:48
有人知道如何检索使用 MapElementClick 事件处理程序选择的 mapIcon 的属性吗?我的地图上有多个图标,当我单击其中一个图标时,我需要知道与我单击的元素相关联的标题、位置和图像。到目前为止,我发现该处理程序的 sender 参数没有给出我选择了哪些元素的任何指示。任何信息或建议将不胜感激。
查看完整描述

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

如果订阅MapControl.MapElementClick事件,则可以使用此事件处理程序参数中的MapElementClickEventArgs实例来获取此事件来自哪个 MapElement 的事件数据。


private void MyMapControl_MapElementClick(MapControl sender, MapElementClickEventArgs args)

{

    var elements = args.MapElements;

    foreach (var item in elements)

    {

        Debug.WriteLine(item.Tag);

    }


    MapIcon element = args.MapElements.First<MapElement>() as MapIcon;

    Debug.WriteLine(element.Title);

}

否则,如果您使用MapElementsLayer.MapElementClick事件,则可以在此事件处理程序参数中使用MapElementsLayerClickEventArgs的实例来获取来自该事件的 MapElement 的事件数据。


private void LandmarksLayer_MapElementClick(MapElementsLayer sender, MapElementsLayerClickEventArgs args)

{

    var elements= args.MapElements;

    foreach(var item in elements)

    {

        Debug.WriteLine(item.Tag);

    }


    MapIcon element = args.MapElements.First<MapElement>() as MapIcon;

    Debug.WriteLine(element.Title);

}


查看完整回答
反对 回复 2021-12-05
  • 1 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信