Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1072226
  • 博文数量: 403
  • 博客积分: 10272
  • 博客等级: 上将
  • 技术积分: 4407
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-24 14:22
文章分类

全部博文(403)

文章存档

2012年(403)

分类: 嵌入式

2012-03-29 20:53:37

相信有很多人在开发WP7的时候都用过BM控件

但是作为一个中国人,看着纯英文版的地图,还是觉得有点别扭

所以特意在网上搜了一下方法,然后自己实现出来,现在分享给大家!

首先在XAML代码里添加如下代码

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

  

Height="607" Width="456" Margin="0"
CredentialsProvider="[LIVEID]"
LogoVisibility="Collapsed"
CopyrightVisibility="Collapsed"
ZoomBarVisibility="Visible"/>

接下来在xaml.cs文件里添加如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
UriBuilder tileSourceUri = new UriBuilder("{quadkey}.png?g=41");
MapTileLayer tileLayer = new MapTileLayer();
Microsoft.Phone.Controls.Maps.Platform.Location first = new Microsoft.Phone.Controls.Maps.Platform.Location();
first.Latitude = 60;
first.Longitude = 60;
LocationRectTileSource tileSource = new LocationRectTileSource(tileSourceUri.Uri.ToString(),
new LocationRect(first, 180, 180), new Range(1, 16));
tileLayer.TileSources.Add(tileSource);
tileLayer.Opacity = 0.9;
myMap.Children.Add(tileLayer);
myMap.Mode = new MercatorMode();
}

下面试运行后的效果截图:

源码下载地址如下:

另外小弟建了个WP7开发交流QQ群,欢迎博客的各位大牛、小牛们哈

QQ群号:170716593

阅读(1333) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~