private void GetHolidays(int year) { if (this.holidays == null || this.holidays.Year != year) {//Die speziellen Tage für das angezeigte Jahr ermitteln ClsSpecialDays specialDays = DateAndTimeUtils.GetGermanSpecialDays(year); this.holidays = new ClsSpecialDays(year); foreach (var specialDay in specialDays.Values) { if (specialDay.IsHoliday) { this.holidays.Add(specialDay.Key, specialDay); } } this.timer.Start(); // Timer starten, der etwas zeitverzögert die Feiertage ermittelt und in BoldedDates schreibt } }
internal static ClsSpecialDays GetGermanSpecialDays(int year) { // GermanSpecialDays-Instanz erzeugen ClsSpecialDays gsd = new ClsSpecialDays(year) { // isNationwide, isHoliday }; DateTime easterSunday = GetEasterSundayDate(year); gsd.Add(GermanSpecialDayKey.Karfreitag, "Karfreitag", easterSunday.AddDays(-2), true, true); gsd.Add(GermanSpecialDayKey.Ostermontag, "Ostermontag", easterSunday.AddDays(1), true, true); gsd.Add(GermanSpecialDayKey.Ostersonntag, "Ostersonntag", easterSunday, true, true); gsd.Add(GermanSpecialDayKey.ChristiHimmelfahrt, "Christi Himmelfahrt", easterSunday.AddDays(39), true, true); gsd.Add(GermanSpecialDayKey.Pfingstsonntag, "Pfingstsonntag", easterSunday.AddDays(49), true, true); gsd.Add(GermanSpecialDayKey.Pfingstmontag, "Pfingstmontag", easterSunday.AddDays(50), true, true); return(gsd); }