要使用扩展模式必须得做些准备工作,原先的控件版本肯定是实现不了,得重新下载新的控件版本才支持新地图模式的功能。首先得下载新版本的支持扩展模式的Bing Maps Silverlight控件,其次还要下载地图扩展模式的组件(Microsoft.Maps.MapControl.ExtendedModes.dll),此扩展组件由对地图显示模式的扩展的两个类(BirdseyeMode、StreetsideMode)组成,分别表示鸟瞰图模式和街道模式。
扩展模式的使用非常简单,只是修改地图的Mode属性就大功告成了。这里不作介绍,不清楚的朋友可参考本系列第二篇,扩展模式简单示例如下:
<Grid x:Name="LayoutRoot" Width="640" Height="480">
2 <m:Map CredentialsProvider="AkzZURoD0H2Sle6Nq_DE7pm7F3xOc8S3CjDTGNWkz1EFlJJkcwDKT1KcNcmYVINU" x:Name="myMap"
3 Center="34.9294740237661,107.506492025863" ZoomLevel="4">
4 </m:Map>
5 </Grid>
public partialclass MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
//设置地图显示模式为鸟瞰图模式
myMap.Mode =new BirdseyeMode();
}
}
如上代码块直接设置地图Mode为BirdseyeMode既为鸟瞰图模式,要设置街道模式则使用StreetsideMode。
Bing Maps Silverlight模式不会将这两种扩展模式添加到地图导航菜单中,如果需要在导航菜单上显示这两种模式的菜单项需要人为的通过扩展模式的静态方法AddModeToNavigationBar来实现,代码如下:
public partialclass MainPage : UserControl
2 {
3 public MainPage()
4 {
5 InitializeComponent();
6
7 //将鸟瞰图模式添加到地图导航菜单
8 BirdseyeMode.AddModeToNavigationBar(myMap);
9 //将街道模式添加到地图导航菜单
10 StreetsideMode.AddModeToNavigationBar(myMap);
11
12 myMap.Mode= new BirdseyeMode();
13 }
14 }
关于扩展模式的使用主要就是设置显示模式、和设置导航菜单两个点,可惜的是现在还没有比较完整的鸟瞰图地图数据和街道地图数据,欧洲部分国家开通了一部分地图数据,有待微软继续努力,在不久后推出中国地图的鸟瞰图地图数据和街道地图数据。