【Silverlight】Bing Maps学习系列(六):使用扩展模式(Extended Modes)

  微软Bing Maps推出有有段时间了,通过不断的改进和新的地图更新,现在已经基本上形成了一套较为完整的地图引擎方案了,前段时间推出了Bing Maps的Silverlight控件,这个版本的地图模式仅仅只支持路径模式(Road)和卫星模式(AerialMode),通过不断的努力终于于本周三(2009-12-9)推出了两种对Bing Maps的Silverlight控件呈现Bing Maps的扩展模式(Extended Modes),既鸟瞰图模式(BirdseyeMode)和街道模式(StreetsideMode)。当我收到微软关于扩展地图模式的邮件通知的时候,迫不及待的通过连接查看了相关资料,感觉这两种模式下的地图效果很好,近一步的感觉到Bing Maps越来越完善了。

  要使用扩展模式必须得做些准备工作,原先的控件版本肯定是实现不了,得重新下载新的控件版本才支持新地图模式的功能。首先得下载新版本的支持扩展模式的Bing Maps Silverlight控件,其次还要下载地图扩展模式的组件(Microsoft.Maps.MapControl.ExtendedModes.dll),此扩展组件由对地图显示模式的扩展的两个类(BirdseyeMode、StreetsideMode)组成,分别表示鸟瞰图模式和街道模式。

  扩展模式的使用非常简单,只是修改地图的Mode属性就大功告成了。这里不作介绍,不清楚的朋友可参考本系列第二篇,扩展模式简单示例如下:


1 <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 partial class MainPage : UserControl
{
    public MainPage()
    {
        InitializeComponent();
        //设置地图显示模式为鸟瞰图模式
        myMap.Mode = new BirdseyeMode();
    }
}

  如上代码块直接设置地图Mode为BirdseyeMode既为鸟瞰图模式,要设置街道模式则使用StreetsideMode。

  Bing Maps Silverlight模式不会将这两种扩展模式添加到地图导航菜单中,如果需要在导航菜单上显示这两种模式的菜单项需要人为的通过扩展模式的静态方法AddModeToNavigationBar来实现,代码如下:


 1 public partial class 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 }

        

  关于扩展模式的使用主要就是设置显示模式、和设置导航菜单两个点,可惜的是现在还没有比较完整的鸟瞰图地图数据和街道地图数据,欧洲部分国家开通了一部分地图数据,有待微软继续努力,在不久后推出中国地图的鸟瞰图地图数据和街道地图数据。

相关说明

本文属学习笔记文章,愿与有志者共同学习交流。欢迎转载,但请在明显地位标记本文的原文连接。

作      者:Beniao

文章出处:http://beniao.cnblogs.com/  或  http://www.cnblogs.com/

最新文章

  1. Linux(Centos)之安装Java JDK及注意事项
  2. Linux下解压超过4G的zip文件
  3. HTTPS科普扫盲帖
  4. php开发(TP框架使用)
  5. copy和assign的使用和区别
  6. 备份Xcode6的配色主题以及代码模板
  7. 转--Server “**” has shut down the connection prematurely一例分析
  8. mysql选择联合索引还是单索引?索引列应该使用哪一个最有效?深入測试探讨
  9. IE6\ IE7、IE8\9\10和Firefox的hack方式
  10. OpenStack high-level Functionsenabled
  11. C单链表实现
  12. 4个特殊ping
  13. IIS 挂载android的apk文件进行下载
  14. emqtt 试用(九)ssl认证 - 客户端 mqttfx 验证
  15. Spring的核心之IoC容器创建对象
  16. Mysql系列九:使用zookeeper管理远程Mycat配置文件、Mycat监控、Mycat数据迁移(扩容)
  17. 阿里云学习笔记之Java Web环境搭建
  18. 基于cytoscape.js 、 d3.js实现的关系图谱初级版本
  19. 高可用Hadoop平台-实战
  20. 转载:mysql添加用户、删除用户、授权、修改密码

热门文章

  1. 17-看图理解数据结构与算法系列(NoSQL存储-LSM树)
  2. angular2集成highchart
  3. vue 子组件修改父组件变量问题
  4. 洛谷P3373 线段树2(补上注释了)
  5. Wireshark抓包工具的简单使用1(界面介绍)
  6. hdu 5044 树链剖分
  7. 真--可并堆模板--BZOJ2333: [SCOI2011]棘手的操作
  8. CF601D:Acyclic Organic Compounds
  9. msp430入门编程01
  10. POJ 2686_Traveling by Stagecoach【状态压缩DP】