public WeatherPageViewModel() { zipRequest = new ZippoRequest(); oneCallRequest = new OneCallRequest(); hourlyChartCelsiusVm = new HourlyChartViewModel(TemperatureFormat.Celsius); hourlyChartFahrenheitVm = new HourlyChartViewModel(TemperatureFormat.Fahrenheit); currentWeatherVm = new CurrentWeatherViewModel(); dayWeatherViewModels = new ObservableCollection <DayWeatherViewModel>(); for (int i = 0; i < NumberOfDailyEntries; i++) { var dayWeatherVm = new DayWeatherViewModel(); dayWeatherViewModels.Add(dayWeatherVm); } HasError = true; ErrorMessage = "No zip code requested."; if (IsInDesignMode) { HasError = false; ErrorMessage = "Weather page error message."; } }
private void UpdateDailyForecast() { List <DailyEntry> dailies = oneCallRequest.OneCall.DailyEntries; for (int i = 0; i < dayWeatherViewModels.Count; i++) { DailyEntry daily = dailies[i]; Weather weather = daily.WeatherEntries[0]; Temperature temperatureHigh = new Temperature(daily.DailyTemperature.DailyHighCelsius, TemperatureFormat.Celsius); Temperature temperatureLow = new Temperature(daily.DailyTemperature.DailyLowCelsius, TemperatureFormat.Celsius); DayWeatherViewModel vm = dayWeatherViewModels[i]; vm.Date = FormatDateString(daily.DateTime); vm.Description = GetFinalDescription(weather.Description); vm.TemperatureCelsiusLow = string.Format("{0:0.00}", temperatureLow.Celsius); vm.TemperatureCelsiusHigh = string.Format("{0:0.00}", temperatureHigh.Celsius); vm.TemperatureFahrenheitLow = string.Format("{0:0.00}", temperatureLow.Fahrenheit); vm.TemperatureFahrenheitHigh = string.Format("{0:0.00}", temperatureHigh.Fahrenheit); vm.IconUrl = weather.GetIconUrl(); } }