public StatisticsViewModel() { bookingRepository = new BaseRepository <booking>(); _selectedMonthIndex = DateTime.Now.Month; _selectedYearItem = DateTime.Now.Year; Months = americanCulture.DateTimeFormat.MonthNames.Take(12).ToList(); Months.Insert(0, "All"); Years = Enumerable.Range(_selectedYearItem - 2, 3).ToList(); _data = new ObservableCollection <Data>(); Execute_DrawChart(null); }
private void CachePreviousMonths() { var firstMonth = Months.First(); for (int i = 1; i < CachedMonthCount; i++) { var monthToInsertDateTime = firstMonth.CurrentDate.AddMonths(-i); var monthToInsert = new MonthViewModel( monthToInsertDateTime, SelectDayCommand, _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus(monthToInsertDateTime, ConstantsHelper.Active), _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus(monthToInsertDateTime, ConstantsHelper.Completed)); Months.Insert(0, monthToInsert); Months.RemoveAt(Months.Count - 1); } }
private void month_MonthSelected(object sender, MonthSelectArgs e) { Month month = e.Month; if (lastMonth != null) { for (int i = 0; i < Months.Count; i++) { if (lastMonth.SelectedDate.Month == Months[i].SelectedDate.Month) { if (lastMonth.SelectedDate.Day == Months[i].SelectedDate.Day) { lastMonth = Months[i]; Months.RemoveAt(i); Months.Insert(i, lastMonth); } } } } lastMonth = month; DateTime dateTime = DateTime.Now; try { dateTime = lastMonth.SelectedDate; SelectedDateTime = new DateTime(YearTitle, dateTime.Month, dateTime.Day); } catch (Exception) { SelectedDateTime = DateTime.Now; } finally { UpdateDays(SelectedDateTime); semanticzoomDate.ToggleActiveView(); } this.header.MonthTitle = SelectedDateTime.Month.ToString(); this.header.YearTitle = SelectedDateTime.Year.ToString(); this.MonthTitle = SelectedDateTime.Month; this.YearTitle = SelectedDateTime.Year; }
private async Task InitializePreviousAndNextMonths(DateTime dateTime) { await Task.Delay(50); var currentDateTime = new DateTime(dateTime.Year, dateTime.Month, 1); for (int i = 1; i < CachedMonthCount; i++) { var previousMonthDateTime = currentDateTime.AddMonths(-i); var nextMonthDateTime = currentDateTime.AddMonths(i); var previousMonth = new MonthViewModel( previousMonthDateTime, SelectDayCommand, _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus( previousMonthDateTime, ConstantsHelper.Active), _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus( previousMonthDateTime, ConstantsHelper.Completed)); var nextMonth = new MonthViewModel( nextMonthDateTime, SelectDayCommand, _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus( nextMonthDateTime, ConstantsHelper.Active), _toDoCalendarViewModel.GetDaysWithToDoByDateAndStatus( nextMonthDateTime, ConstantsHelper.Completed)); Device.BeginInvokeOnMainThread(() => { Months.Insert(0, previousMonth); Months.Add(nextMonth); }); } }