成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Windows Phone 7的地圖控件

移動開發
現在地理定位服務在移動應用程序中越來越流行,它的這種能告知用戶身處何地以及身邊有何物的能力變得越來越重要。本文將詳細介紹地圖控件的應用。

在我們詳細介紹了Windows Phone 7的樞軸控件全景視圖控件,本文我們將介紹地圖控件。現在地理定位服務在移動應用程序中越來越流行,它的這種能告知用戶身處何地以及身邊有何物的能力變得越來越重要。

使用地圖控件

作為Visual Studio 2010工具箱的一部分,你只需要將一個地圖控件拖到頁面中即可。這樣做時,你會注意到在頁面中添加了另一個XML名稱空間。

  1. xmlns:map="clr-namespace:Microsoft.Phone.Controls.Maps;assembly=Microsoft.Phone.Controls.Maps" 
  2.  

這是在我的例子中默認添加的XAML(在我調整好位置和尺寸后):

  1. <map:Map Height="607" HorizontalAlignment="Left" Name="myMap" VerticalAlignment="Top" Width="456" /> 
  2.  

***,來一張程序中地圖的截圖:

程序中地圖的截圖
程序中地圖的截圖

你會注意到在上圖中央的白色文字寫著“無效的證書。注冊一個開發人員賬戶”。本文的剩余部分,我會說一下我們能對這個地圖控件進行的所有不同的操作,包括獲得一個有效地開發人員API密鑰。

創建你的開發人員賬戶

在構建你的地圖程序之前首先要做的就是獲得一個Bing Map API密鑰。這很簡單,并且是免費的,并且可以將上面那行丑陋的白字去掉。要得到它,需要前往Bing地圖站點并注冊。完成后,你需要創建一個API密鑰。窗體看起來是這樣的:

創建你的開發人員賬戶
創建你的開發人員賬戶

當你填好后,他們會給你一個看起來像這樣的API密鑰:

  1. AsWlUnHEvLgHlLHaRqTZLslewv1QIdGppxOqyL-7He2jxyHvLAjutrcntemUih-w9  
  2.  

(這不是我的API密鑰。我替換了很多字符。但它看起來應該像你見到的這樣。)

使用Credentials Provider屬性

既然你已經有一個API密鑰了,我們需要將它插入到我們的程序中。如果你的程序中只有一個地圖控件,向下面這樣使用就非常好:

  1. <map:Map CredentialsProvider="AsWlUnHEvLgHlLHaRqTZLslewv1QIdGppxOqyL-7He2jxyHvLAjutrcntemUih-w9"> 
  2.  

如果你想重用這個值,應該將它保存到別的地方,比如App.xaml文件。像下面這個例子。我提供了你會在App.xaml文件和實際的地圖控件中都能用到的代碼。我們在App.xaml文件中創建了一個靜態的CredentialsProvider,并在我們的頁面中訪問它。

  1. App.xaml  
  2. <Application.Resources> 
  3.     <map:ApplicationIdCredentialsProvider ApplicationId="AsWlUnHEvLgHlLHaRqTZLslewv1QIdGppxOqyL-7He2jxyHvLAjutrcntemUih-w9" x:Key="BingMapsAPIKey"></map:ApplicationIdCredentialsProvider> 
  4. </Application.Resources> 
  5. Map Control  
  6. <map:Map CredentialsProvider="{StaticResource BingMapsAPIKey}"> 
  7.  

改變地圖控件的特性

有很多選項可以改變地圖的外觀。例如,將道路模式改為空中模式,或者決定是否顯示縮放級別選擇器。你有很多很多可以設置的選項,它們都在Bing Maps Silverlight Control Interactive SDK中。我就不必在這里把所有選項都羅列一遍了(他們已經做了很多工作了),但我要告訴你如何從地圖中獲取你的數據。重點只講兩件事:在地圖中添加圖釘和自定義的形狀。

在地圖中添加圖釘

在C#中,添加一個圖釘就是創建一個Pushpin對象,設置它的位置,然后將它添加到地圖中。在XAML中也可以實現。很明顯,XAML為你提供了更快捷的方式,但其實哪種方式都不復雜。

  1. XAML  
  2. <map:Pushpin Location="40.1449, -82.9754" FontSize="30" Background="Orange" Content="1" /> 
  3. C#  
  4. Pushpin pushpin = new Pushpin();  
  5. Location location = new Location();  
  6. location.Latitude = 40.1449;  
  7. location.Longitude = -82.9754;  
  8. pushpin.Location = location;  
  9. pushpin.Background = new SolidColorBrush(Colors.Orange);  
  10. pushpin.Content = "1";  
  11. pushpin.FontSize = 30;  
  12. MapControl.Children.Add(pushpin);  
  13.  

在上面的例子中,無論哪種方式,都會將一個圖釘釘到我的辦公室,在8800 Lyra Drive, Columbus可以找到。在我的程序中看起來是這樣的:

Windows Phone 7的地圖控件
Windows Phone 7的地圖控件

如果你想知道如何將你的地址轉換為經緯度,請參見我的這篇Silverlight 31日談系列中的文章。它包含了地理地址編碼以及你要在手機程序中所做的內容。

在地圖中添加自定義XAML

在Map程序集中有一個小控件叫MapPolygon。向它提供一系列位置,它就會在你的地圖中畫出一個自定義的多邊形,當用戶縮放和移動地圖時它仍會固定在那個位置。由于它是基于經緯度而綁定到地圖的,所以程序中有需要,可以很容易地用它勾勒出國家,州,地區,甚至一個停車場的輪廓。下面是實現方法:

  1. XAML  
  2. <map:MapPolygon Fill="Purple" Stroke="White" Opacity=".7" Locations="40.1449,-82.9754 40.1449,-12.9754 10.1449,-82.9754" /> 
  3. C#  
  4. MapPolygon mapPolygon = new MapPolygon();  
  5. mapPolygon.Fill = new SolidColorBrush(Colors.Purple);  
  6. mapPolygon.Stroke = new SolidColorBrush(Colors.White);  
  7. mapPolygon.Opacity = .7;  
  8. LocationCollection locations = new LocationCollection();  
  9. Location location = new Location();  
  10. location.Latitude = 40.1449;  
  11. location.Longitude = -82.9754;  
  12. Location location1 = new Location();  
  13. location1.Latitude = 40.1449;  
  14. location1.Longitude = -12.9754;  
  15. Location location2 = new Location();  
  16. location1.Latitude = 10.1449;  
  17. location1.Longitude = -82.9754;  
  18. locations.Add(location);  
  19. locations.Add(location1);  
  20. locations.Add(location2);  
  21. mapPolygon.Locations = locations;  
  22.  
  23. MapControl.Children.Add(mapPolygon);  
  24.  

就是這些。我們已經將一個圖釘和一個自定義多邊形覆蓋到了地圖中。關于這個控件的更多功能請參見Bing Maps Silverlight Control Interactive SDK(下面是MapPolygon的截圖)

Windows Phone 7的地圖控件
Windows Phone 7的地圖控件

在這個例子中,你可以找到用XAML和C#將圖釘和多邊形添加到地圖中的例子。可能你不需要全部內容,可以取其一,這完全由你決定。

【編輯推薦】

  1. Windows Phone 7的樞軸控件
  2. Windows Phone 7的全景視圖控件
  3. 使用獨立存儲開發Windows Phone 7應用程序
  4. Windows Phone 7開發工具UI設計新特性
  5. Windows Phone 7 UI設計初學者入門
責任編輯:佚名 來源: ITpub
相關推薦

2010-12-01 13:40:13

樞軸控件Windows Pho

2010-12-01 09:50:21

全景視圖Windows Pho

2010-08-10 13:21:41

Windows PhoWindows Pho

2012-08-09 13:39:22

Windows Pho

2012-08-13 09:56:45

Windows Pho

2010-08-12 10:09:57

Windows PhoPanoramaPivot

2010-10-11 14:42:49

Windows Pho

2013-04-12 11:02:50

WWindowsPho

2013-04-19 10:14:24

2012-06-25 09:55:53

諾基亞地圖Windows Pho

2010-11-26 16:00:08

Windows Pho

2013-07-30 11:18:37

Windows PhoWindows Pho

2010-05-05 13:16:02

Windows PhoWindows CE

2010-03-26 18:08:18

Windows Pho

2010-10-20 16:47:06

MarketplaceWindows Pho

2013-04-17 11:00:17

Windows PhoWindows Pho

2013-04-17 11:10:02

Windows PhoWindows Pho

2012-02-02 16:37:51

Silverlight常用控件

2012-02-02 16:39:40

CheckBox控件源代碼

2011-06-08 09:43:15

Windows Pho
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜小视频在线播放 | 在线免费观看黄网 | 欧洲精品久久久久毛片完整版 | 久久四虎 | 日本综合在线观看 | 美女久久 | 久久久久国产一级毛片高清网站 | yiren22 亚洲综合 | 夜夜爽99久久国产综合精品女不卡 | 久久综合影院 | 精品国产乱码久久久久久闺蜜 | 丝袜毛片| 成人在线精品视频 | 欧美精品91 | 久久久免费 | 日日网| 国产精品久久久久久久久久久久 | 久久久高清 | 色婷婷精品久久二区二区蜜臂av | 欧美成人一区二区三区 | 午夜爱爱毛片xxxx视频免费看 | 欧美一级毛片免费观看 | 国产一级免费视频 | 亚洲精品一区二区三区中文字幕 | a级网站 | 黄色日批视频 | 中文字幕亚洲精品 | 一级大黄色片 | 国产精品观看 | 久草在线 | 蜜臀久久99精品久久久久久宅男 | 国产.com| 久久久久久成人网 | 日韩精品在线视频 | 雨宫琴音一区二区在线 | 日本免费一区二区三区四区 | 欧美一级片在线观看 | 久久国产成人午夜av影院武则天 | 2019精品手机国产品在线 | 色视频在线播放 | 精品在线一区 |