c# Windows Phone 8.1 如何获取地理坐标对象

Posted

技术标签:

【中文标题】c# Windows Phone 8.1 如何获取地理坐标对象【英文标题】:c# Windows Phone 8.1 How to get Geocoordinate object 【发布时间】:2015-11-10 20:57:26 【问题描述】:

我需要用我的经度和纬度获取地理坐标对象。无法通过 new() 获取地理坐标 https://msdn.microsoft.com/en-us/library/windows/apps/windows.devices.geolocation.geocoordinate 一种方法是例如这段代码

var locator = new Geolocator();
        locator.DesiredAccuracyInMeters = 50;
        var position = await locator.GetGeopositionAsync();
        Geocoordinate Coordinate = position.Coordinate;

获取 GPS 坐标。但我需要地理坐标与我的经度和纬度。

【问题讨论】:

这是一个没有公共构造函数的密封类,所以你不能。为什么需要一个? @PaulAbbott 我想在 MapControl 图钉上进行设置。只有地理坐标适用于 xaml 绑定。 ***.com/questions/33616665/… MapIcons 和 XAML 控件使用 Geopoint 在地图上建立位置。你是什​​么意思“只有地理坐标在 xaml 绑定中有效”?您链接的问题甚至说“不应绑定Geocoordinate,而应绑定Geopoint”。 @PaulAbbott 很好,但是当我有对象 Geopoint Location 时,Maps:MapControl.Location="Binding Location.Position" 不起作用。当我有地理坐标位置时, Maps:MapControl.Location="Binding Location.Point" 工作得很好。如何使用 Geopoint 做到这一点? 如果LocationGeopoint,那么您需要Maps:MapControl.Location="Binding Location"Location.PositionBasicGeoposition,这不是地图控件想要的。 【参考方案1】:

您不能创建Geocoordinate,因为它是一个密封的只读类。相反,绑定到Geopoint,其中包含您需要的所有位置信息,而不需要Geocoordinate 拥有的位置服务包。

public Geopoint Location get; set;

Maps:MapControl.Location="Binding Location"

【讨论】:

以上是关于c# Windows Phone 8.1 如何获取地理坐标对象的主要内容,如果未能解决你的问题,请参考以下文章

如何将 C# 中的 Image 对象制作到 Windows Phone 8.1

OneSignal 推送通知 ClickEvent 显示空值 Windows phone 8.1 C#

如何获取 Windows Phone 8.1 的设备唯一 ID?

有啥方法可以使用 C# 获取 Windows Phone 设备的 IMEI 号码

windows phone 8.1 调用rest api c#

如何在 Windows Phone 8.1 中获取当前位置的当前货币代码