public WorkCalendarDayControl()
        {
            InitializeComponent();

            // Параметры цветов по умолчанию
            // CLR говорит о исключениях при инициализации цвета поэтому так =>
            try
            {
                InitializeColors();
            }
            catch (NullReferenceException ex)
            {
                MessageBox.Show(ex.ToString());
            }

            // Шрифты по умолчанию
            _font = base.Font;
#if DEBUG
            _calendarDay = new CalendarDay(DateTime.Now);
            _calendarDay.ChangeCalendarDayAttribute(WorkDayAttribute.ShortDay);
            _calendarDay.CalendarDayComment = "Test comment";
#endif
            //this.BorderStyle = BorderStyle.FixedSingle;
            //this.BackColor = Color.BurlyWood;
        }
示例#2
0
 /// <summary>
 ///     получение аттрибутов, расшифровки и комментариев из календаря по умолчанию
 /// </summary>
 /// <param name="date">Дата</param>
 /// <param name="calendarDay">Ссылка на объект календарного дня</param>
 public static void GetCalendarDayDescriptionAndAttribute(DateTime date, ref CalendarDay calendarDay)
 {
     // Преобразуем дату в строку без года
     var str = date.ToString("dd") + "." + date.ToString("MM");
     // получаем календарь
     var dic = OrdinaryCalendar.GetCalendar();
     // проверяем на наличие в календаре текущей даты
     if (!dic.ContainsKey(str)) return;
     // если она есть, меняеем аттрибуты
     calendarDay.ChangeCalendarDayAttribute(WorkDayAttribute.UnWorkDay);
     // описание
     calendarDay.ChangeCaledarDayDescription(CalendarDayDescription.HollyDay);
     string value;
     dic.TryGetValue(str, out value);
     // и комментарий
     calendarDay.CalendarDayComment = value;
 }
示例#3
0
 /// <summary>
 ///     Изменяет аттрибуты календарного дня
 /// </summary>
 /// <param name="calendarDayDescription">Расшифровка календарного дня</param>
 /// <param name="calendarWorkDayAttribute">Аттрибуты календарного дня</param>
 /// <param name="calendarDayComment">Комментарий</param>
 /// <param name="calendarDay">структура, календарный день, переданная по ссылке</param>
 /// <param name="callBackMetod">Метод, запускаемый при изменнени аттрибутов календарного дня</param>
 public static void Change(CalendarDayDescription calendarDayDescription,
     WorkDayAttribute calendarWorkDayAttribute,
     string calendarDayComment, ref CalendarDay calendarDay, CallBack callBackMetod)
 {
     calendarDay.ChangeCalendarDayAttribute(calendarWorkDayAttribute);
     calendarDay.ChangeCaledarDayDescription(calendarDayDescription);
     calendarDay.CalendarDayComment = calendarDayComment;
     // Если указан делегат, то выполняем его
     if (callBackMetod != null) callBackMetod.Invoke();
 }
 /// <summary>
 ///     Конструктор
 /// </summary>
 /// <param name="calendarDay">Календарный день</param>
 public WorkCalendarDayDataEventArgs(CalendarDay calendarDay)
 {
     CalendarDay = calendarDay;
 }
示例#5
0
 public void GetCalendarDayDescriptionAndAttributeTest()
 {
     var a1 = new CalendarDay(DateTime.Now);
     HollydaysInfo.GetCalendarDayDescriptionAndAttribute(new DateTime(DateTime.Now.Year, 01, 01), ref a1);
     Assert.AreEqual<CalendarDay>(a1, new CalendarDay(new DateTime(DateTime.Now.Year, 01, 01)));
 }
 public WorkCalendarDayControl(DateTime date) : this()
 {
     _calendarDay = new CalendarDay(date);
 }