You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#循环中用索引声明变量添加MapPolyline

循环添加MapPolyline的C#正确实现

在循环中向地图添加多个MapPolyline时,必须每次创建新的实例——如果复用同一个实例,后续的赋值会覆盖之前的配置,最终地图上只会显示最后一条折线。

以下是正确的C#实现代码:

// 假设collections是存储LocationCollection的目标集合
for (int i = 0; i < collections.Count; i++)
{
    // 每次循环创建全新的MapPolyline实例
    MapPolyline mapPolyline = new MapPolyline();
    
    // 配置折线样式
    mapPolyline.Stroke = new System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.Orange);
    mapPolyline.StrokeThickness = 2;
    mapPolyline.Opacity = 0.8;
    
    // 绑定当前循环项对应的位置集合
    mapPolyline.Locations = collections[i];
    
    // 将折线添加到地图控件的子元素列表
    mymap.Children.Add(mapPolyline);
}

核心注意点

  • 循环内每次执行new MapPolyline():确保每条折线都是独立的对象,不会被后续循环的操作覆盖属性值。
  • 绑定对应索引的LocationCollection:避免所有折线共用同一组坐标数据,保证每条折线展示对应的数据。

内容的提问来源于stack exchange,提问作者Luis Novais Reis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 07:25:22