【问题标题】:Esri Silverlight control. How do I bind layer similar to Bing maps?Esri Silverlight 控制。如何绑定类似于 Bing 地图的图层?
【发布时间】:2014-11-28 21:53:15
【问题描述】:

我正在从 Bing 地图切换到 ESRI,但很难找到可以做同样事情的样本..

我在显示资产位置的底图顶部有图层。通过 MVVM 绑定数据。

这是来自 Bing 地图的代码:

<m:MapItemsControl ItemsSource="{Binding Source={StaticResource WorkLayerData}}">
  <m:MapItemsControl.ItemTemplate>
    <DataTemplate>
      <Canvas .. coordinate properties
       .... STUFF drawn here.....

      </Canvas>                                               
    </DataTemplate>
  </m:MapItemsControl.ItemTemplate>
</m:MapItemsControl>

我认为最接近的是 ESRI Silverlight 控件中的 ElementLayer,但不知道如何将其绑定到我的数据源并获得类似的结果。

我什至无法发布我尝试过的内容,因为我在 ESRI 网站上找到的所有示例都只是做静态元素,但我需要绑定集合。

任何指针?

【问题讨论】:

    标签: xaml silverlight binding esri


    【解决方案1】:

    您可能希望使用 Esri FeatureLayer,它可以连接到 MapService(如果您使用 Esri 地图服务器)或空间数据服务。

    您看过这里的在线示例吗?

    https://developers.arcgis.com/silverlight/sample-code/start.htm#FeatureLayerSimple

    【讨论】:

    • 是的,但是我有这个数据,它在我的服务器上,我存储在本地
    • 我只需要显示一个图层。如果我必须将数据上传到 Esri 服务器才能显示它 - 那么这没有任何意义..
    • 请注意,它可以连接到 MapService 或空间数据服务……如果您在自己的服务器上有数据,那么您将如何提供服务?通过服务?你能让那个服务成为空间服务吗? AFAIK,您无需使用完整的 MapService。
    • 最好不需要大量重构。现在从服务器加载数据(实际上并不重要),我将它作为一个 n 对象数组。对象具有不同的属性,而 Lat/Lon 只是其中的 2 个,现在与 BingMaps 控件一起使用以将我的 UI 放置在地图上。这不仅仅是一个点。这里的重点是我绑定到模板化 UI。地图只需要 X/Y 来放置容器和其他根据不同属性动态绘制的东西。
    • 似乎我可以使用 ElementLayer,但如果它不是固定的东西,则必须以编程方式添加元素。我绑定的每个元素 - 可单击以显示包含更多数据的弹出窗口。整个层是交互式的。就像你绑定ListView一样,但是元素定位的地方需要按纬度/经度
    【解决方案2】:

    SL SDK 附带一个开箱即用的 Bing 地图层。

    在此处查看 Bing 地图示例: https://developers.arcgis.com/silverlight/sample-code/start.htm#BingImagery

    基本上是:

    <esri:Map>
        <bing:TileLayer Token="INSERT_MY_BING_KEY_HERE" LayerStyle="Road" />
    </esri:Map>
    

    【讨论】:

    • dotMorten,这不是问题。我提到我正在放弃 Bing 地图控制。我正在尝试将我的自定义图钉层绑定到 ESRI 控件,但不知道如何。关于我如何使用 bing 提供的示例。与底图显示无关
    猜你喜欢
    • 1970-01-01
    • 2012-09-13
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多