private void SetCalendarDays(int month, int year) { SuspendLayout(); try { ClearCalendarDays(); AddOffsetDays(year, month); int daysInCurrentMonth = DateTime.DaysInMonth(year, month); for (int i = 1; i <= daysInCurrentMonth; i++) { DateTime date = new DateTime(year, month, i); DayData dayData = new DayData { Day = i, IsWeekend = date.DayOfWeek == DayOfWeek.Saturday || date.DayOfWeek == DayOfWeek.Sunday, IsHoliday = DateSystem.IsPublicHoliday(date, CountryCode.ES) }; DayControl dayControl = new DayControl(dayData); _daysControls.Add(dayControl); flowLayoutPanel.Controls.Add(dayControl); } } finally { ResumeLayout(); } }
private void UpdateCalendarWorkerData(List <DayData> daysList) { foreach (DayData dayData in daysList) { DayControl dayControl = _daysControls.FirstOrDefault(s => s.Data.Day == dayData.Day); if (dayControl != null) { dayControl.Data = dayData; } } }