[Windows Phone] 地图控制项的经纬度

原文: [Windows Phone] 地图控制项的经纬度

前言

本文主要示范如何使用地图经纬度以及显示地标和行人街道,并透过卷轴控制地图缩放比例的功能。

?

实作

step1 建立专案。

[Windows Phone] 地图控制项的经纬度_第1张图片

?

step2 ?在 WMAppManifest.xml 的地方用滑鼠点两下。

[Windows Phone] 地图控制项的经纬度_第2张图片

?

step3 ?进去WMAppManifest.xml 後,先点选 [功能],再勾选 [ID_CAP_MAP] 来开启地图功能。

[Windows Phone] 地图控制项的经纬度_第3张图片

?

step4 ?设计画面

[Windows Phone] 地图控制项的经纬度_第4张图片

产生 xaml 的程式如下:

在 phone:PhoneApplicationPage 加入下方程式码引用 Microsoft.Phone.Maps,才能使用地图控制项。

 xmlns:maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"

?

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="10,10,14,-10">
            <TextBlock HorizontalAlignment="Left" Margin="10,29,0,0" TextWrapping="Wrap" VerticalAlignment="Top" FontSize="25" Height="53" Width="120" Text="纬度/经度"/>
            <Button Content="Button" HorizontalAlignment="Left" Height="0" Margin="88,53,0,0" VerticalAlignment="Top" Width="12"/>
            <TextBox x:Name="tba" HorizontalAlignment="Left" Height="72" Margin="130,10,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="96" RenderTransformOrigin="0.461,0.539"/>
            <TextBox x:Name="tbb" HorizontalAlignment="Left" Height="72" Margin="231,10,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="96"/>

            <maps:Map x:Name="map" HorizontalAlignment="Left" Margin="10,154,0,0" VerticalAlignment="Top" Height="443" Width="436" ZoomLevel="18"
                      LandmarksEnabled="True" 
                      PedestrianFeaturesEnabled="True"/>
            <!--  LandmarksEnabled显示地标 , PedestrianFeaturesEnabled显示行人街道-->
            <Button x:Name="btn" Content="确定" HorizontalAlignment="Left" Margin="327,10,0,0" VerticalAlignment="Top"/>
            <TextBlock HorizontalAlignment="Left" Margin="10,87,0,0" TextWrapping="Wrap" Text="地图缩放" VerticalAlignment="Top" Width="109" Height="46" FontSize="25"/>
            <Slider x:Name="sld" HorizontalAlignment="Left" Margin="128,72,0,0" VerticalAlignment="Top" Width="280" Height="85" FontSize="15" Value="10" Minimum="1" Maximum="20"/>

        </Grid>

?

step5?MainPage.xaml.cs 程式码中的事件处理函式如下:

  public partial class MainPage : PhoneApplicationPage
    {
        // 建构函式
        public MainPage()
        {
            InitializeComponent();
            sld.ValueChanged += 
                new RoutedPropertyChangedEventHandler (sld_ValueChanged);
            // 将 ApplicationBar 当地语系化的程式码范例
            //BuildLocalizedApplicationBar();
        }

        private void sld_ValueChanged(object sender, RoutedPropertyChangedEventArgs e)
        {
            map.ZoomLevel = sld.Value;
        }

        private void btn_Click(object sender, RoutedEventArgs e)
        {
            Double Latitude, Longitude;  //Latitude纬度、Longitude经度
            Latitude = Double.Parse(tba.Text);
            Longitude = Double.Parse(tbb.Text);
            map.Center = new GeoCoordinate(Latitude, Longitude);
            map.ZoomLevel = 10; //地图缩放比例
        }

结果

此应用程式包含使用地图经纬度以及显示地标和行人街道,并透过卷轴控制地图缩放比例的功能。

[Windows Phone] 地图控制项的经纬度_第5张图片

?

范例下载

map经纬度.rar

?

相关参考与引用

Maps and navigation for Windows Phone 8


posted on 2013/11/25 09:14 | 阅读数 : 258 1 人推荐 我要推荐 | Add Comment | 文章分类 [ Windows Phone ] 订阅

你可能感兴趣的:(windows,phone)