protected override void OnNavigatedTo(NavigationEventArgs e) { String id; if (NavigationContext.QueryString.TryGetValue("si", out id)) { ListId = int.Parse(id); BikeStopViewModel stop = App.ViewModel.Items[ListId]; GeoCoordinate location = new GeoCoordinate(stop.Latitude, stop.Longitude); StopId = stop.Id; BikeStopName.Text = stop.Name; BikeStopMap.Center = location; BikeStopDistrict.Text = stop.District; BikeStopAddress.Text = stop.Address; TargetMarker.Location = location; TargetMarker.Content = stop.Name; TargetMarker.Visibility = Visibility.Visible; if (!appSettings.Contains(Constants.TRACKING) || (bool)appSettings[Constants.TRACKING]) { watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.Default); watcher.MovementThreshold = 20; // 20 meters watcher.PositionChanged += new EventHandler <GeoPositionChangedEventArgs <GeoCoordinate> >(OnPositionChanged); watcher.Start(); } BuildLocalizedApplicationBar(); LoadAvailability(StopId); } }
private void OnNearStopsSelectionChanged(object sender, SelectionChangedEventArgs e) { if (NearList.SelectedItem != null) { BikeStopViewModel stop = (BikeStopViewModel)NearList.SelectedItem; NavigationService.Navigate(new Uri("/BikeStopPage.xaml?si=" + App.ViewModel.Indecies.IndexOf(stop.Name), UriKind.Relative)); NearList.SelectedItem = null; } }
protected override void OnNavigatedTo(NavigationEventArgs e) { String id; if (NavigationContext.QueryString.TryGetValue("si", out id)) { ListId = int.Parse(id); BikeStopViewModel stop = App.ViewModel.Items[ListId]; StopId = stop.Id; BikeStopName.Text = stop.Name; BikeStopMap.Center = new GeoCoordinate(stop.Latitude, stop.Longitude); BikeStopDistrict.Text = stop.District; BikeStopAddress.Text = stop.Address; TargetMarker.Content = stop.Name; TargetMarker.GeoCoordinate = new GeoCoordinate(stop.Latitude, stop.Longitude); TargetMarker.Visibility = Visibility.Visible; BuildLocalizedApplicationBar(); LoadAvailability(StopId); } }
private static int NearStopComparison(BikeStopViewModel a, BikeStopViewModel b) { double diff = double.Parse(b.Distance) - double.Parse(a.Distance); return(diff > 0 ? -1 : diff == 0 ? 0 : 1); }
private void OnSearchResultItemSelected(object sender, SelectionChangedEventArgs e) { BikeStopViewModel stop = (BikeStopViewModel)SearchResultList.SelectedItem; NavigationService.Navigate(new Uri("/BikeStopPage.xaml?si=" + App.ViewModel.Indecies.IndexOf(stop.Name), UriKind.Relative)); }