Windows phone 7 当GeoCoordinateWatcher无法获得当前LatLon时,重新启动GeoCoordinateWatcher的最佳实践是什么

Windows phone 7 当GeoCoordinateWatcher无法获得当前LatLon时,重新启动GeoCoordinateWatcher的最佳实践是什么,windows-phone-7,Windows Phone 7,声明一个地理坐标跟踪程序跟踪器。此跟踪器将在PageOnload事件中启动,如下所示 我不知道如何创建一个条件,这样它就会显示:case GeoPositionStatus.NoData,所以我需要一些建议。我的目标是它将重新启动,直到得到当前的纬度和经度 Q1)对于案例GeoPositionStatus.NoData,重新启动GeoCoordinateWatcher的最佳实践是什么 在GeoPositionStatus.NoData情况下执行此操作 tracker.Stop(); tracke

声明一个地理坐标跟踪程序跟踪器。此跟踪器将在PageOnload事件中启动,如下所示

我不知道如何创建一个条件,这样它就会显示:case GeoPositionStatus.NoData,所以我需要一些建议。我的目标是它将重新启动,直到得到当前的纬度和经度

Q1)对于案例GeoPositionStatus.NoData,重新启动GeoCoordinateWatcher的最佳实践是什么

在GeoPositionStatus.NoData情况下执行此操作

tracker.Stop(); tracker.Start()

无效跟踪器\u状态已更改(对象发送器,地理位置状态已更改) { 开关(如状态) { 案例地理位置状态。已禁用: if(tracker.Permission==geoppositionpermission.Denied) { MessageBox.Show(“此设备上的位置服务已关闭。请阅读隐私”); } 其他的 { Show(“位置服务正在工作,但无法获取位置数据”); } 打破 案例地理位置状态。正在初始化: //需要初始化的代码在这里 打破 案例地理位置status.NoData: //Show(“位置数据不可用”); 打破 案例地理位置状态。准备就绪: //当位置数据可用时需要执行的代码位于此处 打破 } } void tracker_StatusChanged(object sender, GeoPositionStatusChangedEventArgs e) { switch (e.Status) { case GeoPositionStatus.Disabled: if (tracker.Permission == GeoPositionPermission.Denied) { MessageBox.Show("The location Service on this device is off.Please read privacy."); } else { MessageBox.Show("Location service is working but it can not get location data."); } break; case GeoPositionStatus.Initializing: // Code which needs to be initialized goes here break; case GeoPositionStatus.NoData: //MessageBox.Show("Location data is not available."); break; case GeoPositionStatus.Ready: // Code which needs to be executed when location data is available goes here break; } }