我正在使用ESRI的silverlight地图控件。目前显示2层(允许用户切换)
if (this.RoadRadioButton.IsChecked.HasValue && this.RoadRadioButton.IsChecked.Value)
{
arcgisLayer.Url = "http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer";
}
else if (this.AerialRadioButton.IsChecked.HasValue && this.AerialRadioButton.IsChecked.Value)
{
arcgisLayer.Url = "http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer";
}
我的用户希望拥有 1.在街景 - 高速公路出口号码 2.关于图像 - 街道名称,类似于Bing的做法。
是否有可能合并图层或类似的东西?
答案 0 :(得分:1)
在此处浏览服务目录以获取更多图层类型:http://services.arcgisonline.com/
特别是在References文件夹中查看服务: http://services.arcgisonline.com/arcgis/rest/services/Reference
您可以将这些作为叠加层放在其他图层之上。
另一方面,不要永远更改正在运行的图层的网址 - 您可能会遇到很多麻烦。而是使用两个层,并翻转可见性。这也将使多层组合更容易。只需将天线和参考图层放在组图层中并切换组图层即可。更好的是,您可以将图层的Visible参数直接绑定到单选按钮,这样您就不需要任何代码。即
<GroupLayer Visible="{Binding IsChecked.Value, ElementName=AerialRadioButton}">
<!-- add your composite set of layers here -->
</GroupLayer>