声明一个 GeoCoordinateWatcher 跟踪器。该跟踪器将在 PageOnload 事件上启动,如下所示。
我不知道如何创建一个条件来显示这个:case GeoPositionStatus.NoData,所以我需要一些建议。我的目标是它将重新启动,直到它获得当前的纬度和经度。
Q1) 对于 GeoPositionStatus.NoData 案例,重新启动 GeoCoordinateWatcher 的最佳做法是什么?
在 GeoPositionStatus.NoData 的情况下执行此操作
跟踪器.Stop(); 跟踪器.Start();
void tracker_StatusChanged(对象发送者,GeoPositionStatusChangedEventArgs e) { 开关(例如状态) { 案例 GeoPositionStatus.Disabled: if (tracker.Permission == GeoPositionPermission.Denied) { MessageBox.Show("此设备上的定位服务已关闭。请阅读隐私。"); } 别的 { MessageBox.Show("定位服务正在运行,但无法获取定位数据。"); } 休息; 案例 GeoPositionStatus.Initializing: // 需要初始化的代码放在这里 休息; 案例 GeoPositionStatus.NoData: //MessageBox.Show("位置数据不可用。"); 休息; 案例 GeoPositionStatus.Ready: // 位置数据可用时需要执行的代码放在这里 休息; } }