Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Bing Maps in Windows Phone

0.00/5 (No votes)
9 Nov 2012 1  
Using Bing Maps in Windows Phone 7

Introduction

Nowadays, mobile applications are getting more and more successful. Their most important advantage is mobility which is realized thanks to some features like Bing Maps. That allows them to be more dynamic and gives a lot of appreciated services to customers. Bing Maps could help find the user's location and show him roads and distances. 

Using the code   

This app will shows you how to use the Map control under the Toolbox. After you drag and drop it on the page, you will have the following code added in the .xaml file.  

<my:Map Height="543" HorizontalAlignment="Left" 
  Name="map1" VerticalAlignment="Top"
  Width="480" Margin="-12,0,0,0" />

After that we will need to add the following usings to start using the Map features:

using Microsoft.Phone.Controls;
using Microsoft.Phone.Controls.Maps;
using System.Device.Location;

So now you can manipulate map1 from the .cs file. We are going to add a simple Pushpin using this code:

//declare the Pushpin 
Pushpin p = new Pushpin();
//define it's graphic properties 
p.Background = new SolidColorBrush(Colors.Yellow);
p.Foreground = new SolidColorBrush(Colors.Black);
//where to put the Pushpin 
p.Location = new GeoCoordinate(10, 36);
//What to write on it
p.Content = "You are here";
//now we add the Pushpin to the map
map1.Children.Add(p);
map1.SetView(new GeoCoordinate(10, 36, 200), 9); 

I added some icons to use it Zoom In, Zoom Out, use the Road Mode and the Aerial Mode with labels:

<phone:PhoneApplicationPage.ApplicationBar>
    <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Opacity="0.9">
        <shell:ApplicationBarIconButton IconUri="/Icons/plus.png" Text="Zoom In" Click="zoomIn_click"/>
        <shell:ApplicationBarIconButton IconUri="/Icons/minus.png" Text="Zoom out" Click="zoomOut_click"/>
        <shell:ApplicationBarIconButton IconUri="/Icons/A.png" Text="Aerial mode" Click="Aerial_click"/>
        <shell:ApplicationBarIconButton IconUri="/Icons/R.png" Text="Road mode" Click="Road_click"/>
        <shell:ApplicationBar.MenuItems>
            <shell:ApplicationBarMenuItem Text="Choose my position" Click="chooseMyPosition_click"/>
            <shell:ApplicationBarMenuItem Text="Locate Me" Click="locateMe_click"/>
            <shell:ApplicationBarMenuItem Text="Set Pushpin" Click="setPin_click"/>
            <shell:ApplicationBarMenuItem Text="Add Pushpin" Click="addPin_click"/>
        </shell:ApplicationBar.MenuItems>
    </shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>  

This line of code is for navigating between pages:

NavigationService.Navigate(new Uri("/ChooseMyPosition.xaml", UriKind.Relative)); 

Some snapshots:

If you need any more information about it, please let me know. 

You may want to see my other samples on MSDN here.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here