技术开发 频道

Silverlight4应用Bing Maps构建程序

       【IT168专稿】在本系列(两篇)文章中,我将通过一个基本的案例程序向你介绍如何通过在Silverlight 4应用程序中集成Bing Maps Silverlight控件来构建一个时下流行的Mashup型应用程序。

  【提示】本文示例开发环境为:

  •    WINDDOWS XP Professional(SP3);
  •       .NET 4.0;
  •    VS2010+Microsoft Silverlight 4 Tools for Visual Studio 2010;
  •    Bing Maps Silverlight Control SDK。

  一、准备工作

  (1)创建一个Bing Maps账户与创建Bing Maps键

  打开网站http://www.bingmapsportal.com/。请登录或创建一个Windows Live ID账户。在登录成功后,单击左边的“Create or view keys”。随后,在新页面的右方的“Create key”小对话框。随便输入一个应用程序名和程序URL,并选择一个类型,然后单击“Create key”按钮生成你创建本文示例需要的键值(复制下来备后面使用)。在免费的情况下,你可以生成五个键值,如图1所示。

1

   图1. 下创建Bing Maps键的界面快照。

  (2)到MSDN网站下载与安装Bing Maps Silverlight Control SDK

1

  图2. 下载Bing Maps Silverlight Control SDK快照。

  下载URL是:http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=beb29d27-6f0c-494f-b028-1e0e3187e830。

  二、创建示例应用程序

  启动Visual Studio 2010创建一个基本的Silverlight 4示例工程,命名工程为SL4BingMashup。同时,选择创建一个“Silverlight Application”类型的宿主网站。

  (1)引用Bing Maps API程序集

  现在,我们来引用Bing Maps API程序集以方便对于地图的控制。

  右键单击上面创建的Silverlight示例工程,然后选择“Add Reference…”。在随后的“Add Reference…”对话框中,使用“浏览”导航到路径C:\Program Files\Bing Maps Silverlight Control\V1\Libraries(这是上述SDK的默认安装位置)下。选择添加两个程序集Microsoft.Maps.MapControl.Common.dll和Microsoft.Maps.MapControl.dll。

  (2)创建地图

  现在,我们已经构建好应用程序框架并添加了必要的程序集引用。接下来,我们就可以创建地图控件了。打开文件MainPage.xaml,输入如下XAML代码:

<Grid X:Name="LayoutRoot" Background="White">

   然后,在上述格子控件中添加两列:

<Grid.ColumnDefinitions>
    
<ColumnDefinition />
    
<ColumnDefinition Width="200"/>
  
</Grid.ColumnDefinitions>

   现在,我们已经规划好的整个应用程序主界面布局。接下来,我们要添加引用Bing maps的命名空间,如下所示:

xmlns:bing="clr-namespace:Microsoft.Maps.MapControl;assembly=Microsoft.Maps.MapControl"

   现在,我们要添加地图控件。在行的下面,添加如下所示的地图控件(显然,这里的Bing Maps键应当是你前面申请生成的其中之一):

<bing:Map CredentialsProvider="Your Bing Maps Key" Mode="Aerial" x:Name="myMAP" />

   这个地图控件提供了几个重要的属性需要解释。首先,它使用别名bing来引用地图控件对应的命名空间,然后使用此别名来调用这个命名空间内包含的地图控件。这个控件有一个重要属性-CredentialsProvider属性。此属性的值是你前面注册时生成的键值之一。

  最后,我们来验证您的代码是否正常运行。结果看起来应该像图3。

1

  图3.调用Bing Map的基本型Silverlight应用程序。

0
相关文章