In this article we are going to see how to programmatically show the Landmarks and Pedestrians in the maps control that is available for Windows Phone application development. To get some basics about maps please refer to my previous article on How to use Maps in Windows Phone application. Map control has the property called Landmarksenabled and PedestrianFeatureEnabled which are used to customize the requirement the maps to get the details of Landmarks and Pedestrian details. In this article we will see how to use these properties while developing the application. Open Visual Studio 2012 IDE and create a new Windows Phone project with a valid project name as shown in the screen below. [more]
Clicking on OK will create the project and the solution with the list of default files and folders that are required to run the application. It will take some time to create these files based on your system configuration, so once everything is ready we can see the Visual Studio IDE with the project as shown in the screen below.
Let us add some controls to activate the Landmark and Pedestrian property on the button click event so we will add a Button control and the Map control from the toolbox as shown in the code below.
XAML Code:
[code:c#]<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="F5debug How to Series" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="Landmark Maps" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
<!–ContentPanel – place additional content here–>
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<Button Content="Activate Landmarks and Pedestrians" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="446"/>
<maps:Map x:Name="mymaps" HorizontalAlignment="Left" Margin="27,87,0,0" VerticalAlignment="Top" Height="510" Width="419"/>
</Grid>
[/code]In the button click event let us add the below code which enables the properties that are required for activating Landmark and Pedestrian properties in the maps for the current location as shown in the code below.
C# Code:
[code:c#]using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Navigation;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using F5debugHowto71.Resources;
namespace F5debugHowto71
{
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
InitializeComponent();
mymaps.Center = new System.Device.Location.GeoCoordinate(47.6097, -122.3331);
mymaps.ZoomLevel = 15;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
mymaps.Center = new System.Device.Location.GeoCoordinate(47.6097, -122.3331);
mymaps.ZoomLevel = 15;
mymaps.LandmarksEnabled = true;
mymaps.PedestrianFeaturesEnabled = true;
}
}
}
Now we are done with the code, just run the application by pressing F5 directly from the keyboard or we can use the Build and execute the project option from the tool bar to run the application. Once the Build is successful we can see the Windows Phone emulator with the application and the expected outputs as shown in the screen below.