Click here to Skip to main content
15,884,629 members
Articles / Mobile Apps / Windows Phone 7
Tip/Trick

Bing Maps in Windows Phone

Rate me:
Please Sign up or sign in to vote.
3.60/5 (6 votes)
9 Nov 2012CPOL1 min read 39.1K   1.5K   7   4
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.  

XML
<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:

C#
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:

C#
//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:

XML
<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:

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

Some snapshots:

Image 1

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, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer Microsoft
Tunisia Tunisia
I'm a Software Engineer and MVP (Client Development). I like writing articles and developing open source software in C#, Windows Phone and Windows 8 applications droidcon.tn/speakers.php.
http://houssemdellai.net

Comments and Discussions

 
GeneralMy vote of 5 Pin
Edward Keningham9-Aug-12 13:52
Edward Keningham9-Aug-12 13:52 
Question[My vote of 2] No article content Pin
Ganesan Senthilvel9-Aug-12 6:25
Ganesan Senthilvel9-Aug-12 6:25 
AnswerRe: [My vote of 2] No article content Pin
Sandeep Mewara12-Aug-12 9:04
mveSandeep Mewara12-Aug-12 9:04 
GeneralMy vote of 4 Pin
Christian Amado9-Aug-12 6:03
professionalChristian Amado9-Aug-12 6:03 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.