[Windows Phone] 地图覆叠层控制项(MapOverlay )
2014-03-08 21:24
363 查看
原文:[Windows Phone] 地图覆叠层控制项(MapOverlay )
当使用地图时,我们可能需要定位一些座标图示或是绘制一些文字线条,这时可以在地图上加上覆叠层进行绘制,在 Windows Phone 应用程式中是透过地图覆叠层控制项(MapOverlay )来达成,本文将以实例展示如何使用。
?
step1 建立专案。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/map_2.png)
?
step2 在 WMAppManifest.xml 滑鼠左键按两下进行编辑。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/1_2.png)
?
step3 开启 WMAppManifest.xml 後,先切换至 [功能] 索引标签,再勾选 [ID_CAP_MAP] 来开启地图功能。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/2_2.png)
?
step4 画面设计。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/12_2.png)
?
map 控制项,Name 属性:map,Center 属性:24.167, 120.883(为台中市和平区经纬度),ZoomLevel 属性:10。
产生 xaml 的程式如下:
在 phone:PhoneApplicationPage.xaml 加入下方程式码引用 Microsoft.Phone.Maps,才能使用地图控制项。
?
?
step5 MainPage.xaml.cs 程式码中的事件处理函式如下:
?
?
在地图中,透过地图覆叠层控制项,显示圆与三角形於定位的位置。
![](http://Files.Dotblogs.com.tw/uvia820701/1311/20131127121921894.png)
?
覆叠层.rar
?
MapOverlay Class
var now = new Date();var index=now.getTime();document.write('');
![](http://s1.dotblogs.com.tw/admentorserve.aspx?type=img&z=18&a=11)
posted on 2013/11/27 12:12 |
阅读数 : 289
|
1 人推荐
我要推荐
|
Add Comment
| 文章分类 [
Windows Phone
]
|
订阅
前言
当使用地图时,我们可能需要定位一些座标图示或是绘制一些文字线条,这时可以在地图上加上覆叠层进行绘制,在 Windows Phone 应用程式中是透过地图覆叠层控制项(MapOverlay )来达成,本文将以实例展示如何使用。?
实作
step1 建立专案。![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/map_2.png)
?
step2 在 WMAppManifest.xml 滑鼠左键按两下进行编辑。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/1_2.png)
?
step3 开启 WMAppManifest.xml 後,先切换至 [功能] 索引标签,再勾选 [ID_CAP_MAP] 来开启地图功能。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/2_2.png)
?
step4 画面设计。
![](http://files.dotblogs.com.tw/uvia820701/1311/Overlayer_ABB1/12_2.png)
?
map 控制项,Name 属性:map,Center 属性:24.167, 120.883(为台中市和平区经纬度),ZoomLevel 属性:10。
产生 xaml 的程式如下:
在 phone:PhoneApplicationPage.xaml 加入下方程式码引用 Microsoft.Phone.Maps,才能使用地图控制项。
xmlns:maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"
?
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <maps:Map x:Name="map" HorizontalAlignment="Left" Center=" 24.167,120.883" ZoomLevel="10" Margin="0,10,0,0" VerticalAlignment="Top" Height="587" Width="446"/> </Grid>
?
step5 MainPage.xaml.cs 程式码中的事件处理函式如下:
?
public MainPage() { InitializeComponent(); // 新增两列的格子配置,背景为透明 Grid MyGrid = new Grid(); MyGrid.RowDefinitions.Add(new RowDefinition()); MyGrid.RowDefinitions.Add(new RowDefinition()); MyGrid .Background =new SolidColorBrush(Colors.Transparent); // 建立一个红色直径35的圆 Ellipse Mycir = new Ellipse(); Mycir.Fill = new SolidColorBrush(Colors.Red); Mycir.Height = 35; Mycir.Width = 35; Mycir.SetValue(Grid.RowProperty, 0); // 将圆放到格子中 MyGrid.Children.Add(Mycir); // 在格子第一列的地方,建立一个框为紫色、里面填满黄色的三角形 Polygon Mytriang = new Polygon(); Mytriang.Points.Add(new Point(2, 0)); Mytriang.Points.Add(new Point(22, 0)); Mytriang.Points.Add(new Point(2, 40)); Mytriang.Stroke = new SolidColorBrush(Colors.Purple); Mytriang.Fill = new SolidColorBrush(Colors.Yellow); Mytriang.SetValue(Grid.RowProperty, 1); // 将三角形加入格子里 MyGrid.Children.Add(Mytriang); // 建立覆叠层然後把格子配置放进来 MapOverlay Myoverlay = new MapOverlay(); Myoverlay.Content = MyGrid; //(24.15,120.43)为覆叠层座标 Myoverlay.GeoCoordinate = new GeoCoordinate(24.167, 120.883); Myoverlay.PositionOrigin = new Point(0, 0.5); //新增一个地图层并将覆叠层放进来 MapLayer Mylayer = new MapLayer(); Mylayer.Add(Myoverlay); map.Layers.Add(Mylayer); }
?
结果
在地图中,透过地图覆叠层控制项,显示圆与三角形於定位的位置。![](http://Files.Dotblogs.com.tw/uvia820701/1311/20131127121921894.png)
?
范例档
覆叠层.rar?
相关参考与引用
MapOverlay Classvar now = new Date();var index=now.getTime();document.write('');
posted on 2013/11/27 12:12 |
阅读数 : 289
|
1 人推荐
我要推荐
|
Add Comment
| 文章分类 [
Windows Phone
]
|
订阅
相关文章推荐
- 【0-0 .offset()】
- Struts的FormBean及常见错误和标签的使用
- 安卓开发日记2——思念计数器
- 彻底弄明白之数据结构中的KMP算法
- 用数据库制作通讯录示例
- 什么是元数据?元数据是什么?
- jsp servlet HTTP Get与Post的区别
- 使用ireport+jasperreports生成报表时需要注意的地方
- BOM-frame对象和伪装的frame对象iframe
- C# 隐藏 Windows Phone 侦错模式中萤幕右上角的数据条(模拟器、实机可用),截图好方便。
- Anciroid的IPC机制-Binder概述
- poj 1417 True Liars (并查集+dp)
- N的阶乘-jobdu-1076
- #Windows Phone:在HTML5专案中,如何从Javascript传送字串到C#的APP端
- Android TabHost TabWidget 去除黑线(底部下划线)
- Simple screenshot that explains the non-static invocation.
- 【iOS】如何设置app支持文件共享
- drbd--主从模式配置
- 多版本并发控制(MVCC)在分布式系统中的应用
- linux安全体系的文件权限管理