原文:[Windows Phone] 实作不同的地图显示模式
前言
本文章主要示范如何让地图有不同的模式产生,例如平面图、地形图、鸟瞰图、鸟瞰图含街道等。
这部分主要是调整 Map.CartographicMode 属性,其中 MapCartographicMode 列举包含:
- Road:Specifies the road mode of the map control.
- Aerial:Specifies the aerial mode of the map control.
- Hybrid:Specifies an aerial mode with overlaid roads and labels.
- Terrain:Specifies the terrain mode of the map control.
?
实作
step1 建立专案。
?
step2 在 WMAppManifest.xml 的地方用滑鼠点两下进行编辑。
?
step4 进去 WMAppManifest.xml 後,先点选 [功能],再勾选 [ID_CAP_MAP] 来开启地图功能。
?
step5 MainPage.xaml 画面设计。
Button1 ---->Name=btn1,Content=平面图
Button2 ---->Name=btn2,Content=地形图
Button3 ---->Name=btn3,Content=鸟瞰图
Button4 ---->Name=btn4,Content=鸟瞰图含街道
map ------>Name=map,Center="24.15,120.43"为台中市经纬度,ZoomLevel="10"为缩放比例
?
产生 xaml 程式码:
xmlns:maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="10,0,14,0">
<Button x:Name="btn1" Content="平面图" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Click="btn1_Click"/>
<Button x:Name="btn2" Content="地形图" HorizontalAlignment="Left" Margin="150,10,0,0" VerticalAlignment="Top" RenderTransformOrigin="-0.051,0.477" Click="btn2_Click"/>
<Button x:Name="btn3" Content="鸟瞰图" HorizontalAlignment="Left" Margin="297,10,0,0" VerticalAlignment="Top" Click="btn3_Click"/>
<Button x:Name="btn4" Content="鸟瞰图含街道" HorizontalAlignment="Left" Margin="86,82,0,0" VerticalAlignment="Top" RenderTransformOrigin="-0.923,0.746" Click="btn4_Click" Width="287"/> <maps:Map x:Name="map" Center=" 24.15,120.43" ZoomLevel=" 10" HorizontalAlignment="Left" Margin="10,172,0,0" VerticalAlignment="Top" Height="423" Width="436"/> </Grid>
?
step5? MainPage.xaml.cs 程式码中的事件处理函式如下:
private void btn1_Click(object sender, RoutedEventArgs e)
{
map.CartographicMode = MapCartographicMode.Road;//Road为显示平面图
} private void btn2_Click(object sender, RoutedEventArgs e)
{
map.CartographicMode = MapCartographicMode.Terrain; //Terrain为显示地形图
} private void btn3_Click(object sender, RoutedEventArgs e)
{
map.CartographicMode = MapCartographicMode.Aerial; //Aerial为显示鸟瞰图
} private void btn4_Click(object sender, RoutedEventArgs e)
{
map.CartographicMode = MapCartographicMode.Hybrid; //Hybrid为显示鸟瞰图含有街道
}
结果
平面图 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 地形图
?? ? ? ? ??
鸟瞰图 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?鸟瞰图含街道
? ? ? ? ? ?
?
范例下载
?
相关参考与引用
?
?
posted on 2013/11/25 17:37 |
阅读数 : 264
|
| 文章分类 [
]
|
订阅