在WindowsPhone7上获取GPS坐标

在WindowsPhone7上获取GPS坐标,gps,windows-phone-7,Gps,Windows Phone 7,如何在Windows Phone 7上获取当前GPS坐标?是提供此功能的类。MSDN上有a、a和其他一些 下面是一个简单的例子: GeoCoordinateWatcher watcher; watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Default) { MovementThreshold = 20 };

如何在Windows Phone 7上获取当前GPS坐标?

是提供此功能的类。MSDN上有a、a和其他一些

下面是一个简单的例子:

GeoCoordinateWatcher watcher;

watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Default)
                   {
                       MovementThreshold = 20
                   };

watcher.PositionChanged += this.watcher_PositionChanged;
watcher.StatusChanged += this.watcher_StatusChanged;
watcher.Start();


private void watcher_StatusChanged(object sender, GeoPositionStatusChangedEventArgs e)
{
    switch (e.Status)
    {
        case GeoPositionStatus.Disabled:
            // location is unsupported on this device
            break;
        case GeoPositionStatus.NoData:
            // data unavailable
            break;
    }
}

private void watcher_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
{
    var epl = e.Position.Location;

    // Access the position information thusly:
    epl.Latitude.ToString("0.000");
    epl.Longitude.ToString("0.000");
    epl.Altitude.ToString();
    epl.HorizontalAccuracy.ToString();
    epl.VerticalAccuracy.ToString();
    epl.Course.ToString();
    epl.Speed.ToString();
    e.Position.Timestamp.LocalDateTime.ToString();
}
geocordinatewatcher-watcher;
watcher=新的地理坐标记录器(GeoPositionAccuracy.Default)
{
MovementThreshold=20
};
watcher.PositionChanged+=此.watcher\u PositionChanged;
watcher.StatusChanged+=this.watcher\u StatusChanged;
watcher.Start();
私有无效观察者\u状态已更改(对象发送者,地理位置状态更改Deventargs e)
{
开关(如状态)
{
案例地理位置状态。已禁用:
//此设备上不支持此位置
打破
案例地理位置status.NoData:
//数据不可用
打破
}
}
私有无效观察者位置已更改(对象发送者,地理位置更改Deventargs e)
{
var epl=e.Position.Location;
//通过以下方式访问位置信息:
epl纬度ToString(“0.000”);
epl.经度ToString(“0.000”);
epl.海拔高度ToString();
epl.HorizontalAccurance.ToString();
epl.VerticalAccuracy.ToString();
epl.Course.ToString();
epl.Speed.ToString();
e、 Position.Timestamp.LocalDateTime.ToString();
}