示例#1
0
        private async Task LoadDepartureTimes(bool first)
        {
            var vertrektijden = await DataLoader.LoadAsync(() => _vertrektijdenService.GetVertrektijden(this.CurrentStation.Code));

            TijdList.Clear();

            bool alternative = false;

            foreach (var item in vertrektijden)
            {
                item.IsAlternate = alternative;

                this.TijdList.Add(item);

                alternative = !alternative;
            }
        }
        public async void Initialize(string stationCode, bool full = false)
        {
            _refreshTimer.Start();

            this.CurrentStation = await _stationService.GetStationByCode(stationCode);

            if (full)
            {
                IsPinned = Windows.UI.StartScreen.SecondaryTile.Exists(this.TileId);

                var allFav = await _favStationService.GetAll();

                IsFav = allFav.Select(x => x.Code.ToLower()).Contains(stationCode.ToLower());
            }

            TijdList.Clear();

            await LoadDepartureTimes(true);
        }
示例#3
0
        private async void LoadTijden()
        {
            var result = await DataLoader.LoadAsync(() => NSApiService.GetVertrektijden(this.CurrentStation.Code));

            if (TijdList != null)
            {
                TijdList.Clear();
            }
            else
            {
                TijdList = new ObservableCollection <Vertrektijd>();
            }

            if (result != null)
            {
                foreach (var s in result)
                {
                    TijdList.Add(s);
                }
            }
        }
        private async Task LoadDepartureTimes(bool first)
        {
            try
            {
                //if(first)
                LoadingState = ViewModel.LoadingState.Loading;


                var vertrektijden = await _vertrektijdenService.GetVertrektijden(this.CurrentStation.Code);

                TijdList.Clear();

                bool alternative = false;
                foreach (var item in vertrektijden)
                {
                    if (alternative)
                    {
                        item.BackgroundColor = (SolidColorBrush)App.Current.Resources["AlternateColor"];
                    }
                    else
                    {
                        item.BackgroundColor = (SolidColorBrush)App.Current.Resources["BackgroundColor"];
                    }


                    this.TijdList.Add(item);

                    alternative = !alternative;
                }

                LoadingState = ViewModel.LoadingState.Finished;
            }
            catch
            {
                LoadingState = ViewModel.LoadingState.Error;
            }
        }
示例#5
0
        public StationTijdenViewModel()
        {
            //TijdList = new ObservableCollection<Vertrektijd>();

            DataLoader = new DataLoader();

            if (IsInDesignMode)
            {
                // Code runs in Blend --> create design time data.

                var list = new List <Vertrektijd>();

                list.Add(new Vertrektijd()
                {
                    Tijd                    = DateTime.Now,
                    Eindbestemming          = "Amsterdam",
                    IsVertrekspoorWijziging = false,
                    Ritnummer               = 123,
                    Route                   = "Delft, Den Haag",
                    TreinSoort              = "Sprinter",
                    Vertrekspoor            = "2"
                });

                list.Add(new Vertrektijd()
                {
                    Tijd                    = DateTime.Now,
                    Eindbestemming          = "Delft",
                    IsVertrekspoorWijziging = false,
                    Ritnummer               = 123,
                    Route                   = "Delft, Den Haag",
                    TreinSoort              = "Intercity",
                    Vertrekspoor            = "2b"
                });


                list.Add(new Vertrektijd()
                {
                    Tijd                    = DateTime.Now,
                    Eindbestemming          = "Groningen",
                    IsVertrekspoorWijziging = true,
                    Ritnummer               = 123,
                    Route                   = "Amsterdam, Den Haag",
                    TreinSoort              = "Intercity",
                    Vertrekspoor            = "2b",
                    VertragingTekst         = "+5 min"
                });

                foreach (var x in list)
                {
                    TijdList.Add(x);
                }
                //TijdList = list;
                PageName = "Amsterdam";
            }
            else
            {
            }

            StationService     = SimpleIoc.Default.GetInstance <IStationService>();
            StationNameService = SimpleIoc.Default.GetInstance <IStationNameService>();
            NSApiService       = SimpleIoc.Default.GetInstance <INSApiService>();
            LiveTileService    = SimpleIoc.Default.GetInstance <ILiveTileService>();

            RefreshCommand   = new RelayCommand(() => LoadTijden());
            DeleteCommand    = new RelayCommand(async() => await DeleteStation());
            AddCommand       = new RelayCommand(async() => await AddStationAsync());
            MapCommand       = new RelayCommand(() => MapAction());
            PinCommand       = new RelayCommand(() => PinStation());
            PlanCommand      = new RelayCommand(() => PlanStation());
            ToListCommand    = new RelayCommand(() => ToList());
            StoringenCommand = new RelayCommand(() => ToStoringen());
            RitInfoCommand   = new RelayCommand <Vertrektijd>(x => ToRitInfo(x));


            ViewModelLocator.StoringenStatic.CurrentStoringen.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(CurrentStoringen_CollectionChanged);
            InitStoringen();
        }