Win8.1应用开发之Bing Maps
2020-12-13 04:46
标签:win8 bing map 这里介绍如何进行Bing Maps的开发。首先我们需要在我们的程序中引入Bing Map的SDK。具体方法,这里推荐一个链接 在整个开发中,给我感触最深的是,在网上资料稀少的情况下,查看研究Bing Map给出的API是最有效的方法(Map API)。也许API的注释是模棱两可,但只要我们去试,便能了解这些方法的功能。 如果遇到hello world不能显示地图,在C#文件中类的构造方法中添加myMap.HomeRegion = "US"(myMap是XAML中定义的Map,具体见下面的示例代码)
(一)添加图钉:
也许对于鼠标移到图钉上的文字显示的样式不满意,比如某个图钉是一个景点,当我们将鼠标移到它上面是时,最好能出现照片。这时可借助样式Style。 在App.xaml中添加如下:
有了点,下面是线,能描绘出一块指定区域。下面的代码将山大济南六个校区连接起来。(PS:可以通过谷歌地图获得某个地点的API,方法是将鼠标放在某个地点,右键选择“这是哪里?”便会在搜索框中出现精确的经纬度)
Win8.1应用开发之Bing Maps,搜素材,soscw.com Win8.1应用开发之Bing Maps 标签:win8 bing map 原文地址:http://blog.csdn.net/bluecloudmatrix/article/details/37886413using Windows.UI;
using Windows.UI.Popups;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
// “空白页”项模板在 http://go.microsoft.com/fwlink/?LinkId=234238 上有介绍
namespace demo02
{
///
xmlns:bm="using:Bing.Maps"将SDK引入程序。Pushpin是图钉,Tapped是点击该图钉触发的方法,方法在C#文件中定义。Location的属性有经纬度,这是图钉在地图上的坐标。除了在XAML中静态设置图钉,我们还可以通过编程动态添加。
using Bing.Maps;
using demo02.DataStructure;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI;
using Windows.UI.Popups;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
// “空白页”项模板在 http://go.microsoft.com/fwlink/?LinkId=234238 上有介绍
namespace demo02
{
///
位置是:
这样样式便定义好了,接下来看如何使用:
//用图钉标注山东大学36.677549,117.054218
var pushpin = new Pushpin();
//ToolTipService.SetToolTip(pushpin, "山东大学");
ToolTipService.SetToolTip(pushpin, new ToolTip()
{
Style = Application.Current.Resources["okStyle"] as Style
});
MapLayer.SetPosition(pushpin, new Location(36.677549, 117.054218));
pushpin.Tapped += SDU01Tapped;
myMap.Children.Add(pushpin);
(二)连线:
//连接六大校区
MapLayer mPinLayer = new MapLayer();
myMap.Children.Add(mPinLayer);
MapShapeLayer mShapeLayer = new MapShapeLayer();
myMap.ShapeLayers.Add(mShapeLayer);
//定义要连接起来的点
LocationCollection mPolyShapeLocations01 = new LocationCollection();
mPolyShapeLocations01.Add(new Location(36.666818, 117.133137)); //软件园
mPolyShapeLocations01.Add(new Location(36.68525, 117.060184)); //洪家楼
mPolyShapeLocations01.Add(new Location(36.678625, 117.050547)); //中心
mPolyShapeLocations01.Add(new Location(36.650681, 117.013094)); //趵突泉
mPolyShapeLocations01.Add(new Location(36.650414, 117.022868)); //千佛山
mPolyShapeLocations01.Add(new Location(36.602489, 117.049045)); //兴隆山
mPolyShapeLocations01.Add(new Location(36.666818, 117.133137)); //软件园
for (int i = 0; i