2011-03-12 151 views
6

我想在Windows Phone 7 silverlight應用程序上使用bing地圖控件,並且它在地圖上顯示覆蓋的錯誤。WP7 Bing地圖'無效憑證'錯誤

無效證書,註冊一個 開發者帳戶

我使用應用ID這兩個站點嘗試:http://www.bing.com/developers,並https://www.bingmapsportal.com/

我做錯了什麼?有沒有我錯過的帳戶設置?作爲參考,這裏是我如何定義控制,並與其進行交互:

<my:Map x:Name="MyMap" CredentialsProvider="<<myAppId>>" /> 

而且在後面的代碼:

var vm = this.DataContext as ItemViewModel; 
Pushpin pushpin = new Pushpin(); 
Location location = new Location() 
{ 
    Latitude = vm.Latitude, 
    Longitude = vm.Longitude 
}; 
pushpin.Location = location; 

MyMap.ZoomLevel = 15; 
MyMap.Center = location; 
MyMap.Children.Add(pushpin); 

回答

4

轉到http://bingmapsportal.com,並與您的Windows Live ID登錄。登錄後,點擊在左側的菜單中創建或查看密鑰。如果您尚未創建應用程序,請輸入名稱,URL並選擇類型(Mobile)。一旦創建了應用程序,請複製長字符串並將其粘貼到您的XAML中,作爲CredentialsProvider屬性的值。

<my:Map CredentialsProvider="NOTREALVF7QTW-LZfG0p7-RhSPeGvlfx3fdtgR-Gk_SB-wfF8kCj2J7nI57wjIna" />
+0

很奇怪,我嘗試了從該網站獲得的appid,但沒有奏效。但好的,我再次嘗試,它工作正常。謝謝! – 2011-03-13 03:49:37

2

多少辛勞之後,我終於發現,發生這種情況(至少在桌面SL;不知道WP7)當Thread.CurrentUICulture設置爲固定區域性。確保它在App.Startup事件處理程序中設置爲特定文化(也可以考慮設置Thread.CurrentCulture),例如

System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US"); 

當然,您仍然需要AppID設置。