2

我在我的应用程序中使用了 bing 地图,我使用 gps 定位当前位置,我也使用 geoco-ordinatewatcher 获取坐标,并使用图钉固定当前位置。但我的问题是我想获取图钉指向的当前城市和国家/地区名称。我无法使用 map.center 属性来获得它。谁能帮帮我..提前谢谢...

4

3 回答 3

1

以下博客文章应该可以帮助您:-

http://www.nickharris.net/2010/12/how-to-reverse-geocode-a-location-to-an-address-on-windows-phone-7/

不幸的是,CivicAddressResolver 目前未在 Windows Phone 上实现,因此您必须使用基于在线的解决方案。

于 2012-05-30T10:40:09.973 回答
1

请参考下面的代码

ReverseGeocodeRequest reverseGeocodeRequest = new ReverseGeocodeRequest(); // 使用有效的 Bing 地图密钥设置凭据 reverseGeocodeRequest.Credentials = new GeoCodeService.Credentials(); reverseGeocodeRequest.Credentials.ApplicationId = "你的 bing 地图密钥";

        // Set the point to use to find a matching address
        GeoCodeService.Location point = new GeoCodeService.Location();
        point.Latitude = Your lat;
        point.Longitude = Your lng;

        reverseGeocodeRequest.Location = point;

        // Make the reverse geocode request
        GeocodeServiceClient geocodeService = new GeocodeServiceClient("BasicHttpBinding_IGeocodeService");
        geocodeService.ReverseGeocodeCompleted += new EventHandler<ReverseGeocodeCompletedEventArgs>(geocodeService_ReverseGeocodeCompleted);
        geocodeService.ReverseGeocodeAsync(reverseGeocodeRequest);

无效geocodeService_ReverseGeocodeCompleted(对象发送者,ReverseGeocodeCompletedEventArgse){
字符串文本1;

            GeocodeResponse geocodeResponse = e.Result;
            System.Diagnostics.Debug.WriteLine("GeoCode Response is :"+geocodeResponse);
            if (geocodeResponse.Results.Count() > 0)
               text1  = geocodeResponse.Results[0].DisplayName;
            else
                text1 = "No Results found";
            textBlock1.Text = text1;
            System.Diagnostics.Debug.WriteLine("Location is :"+text1);
    }
于 2012-05-30T11:10:54.140 回答
0

无法从设备上的纬度/经度坐标解析位置。
这样做需要设备附带所有地点的数据库来进行查找。这样的数据库将是巨大的,并且存在保持更新的问题。

于 2012-05-30T10:42:12.517 回答