Как получить жирные даты в моем месячном календаре?

Я пытаюсь выделить некоторые даты в моем MonthCalendar. Я отлично получаю все свои даты из имени моего файла, но кажется, что я просто не могу выделить ячейки жирным шрифтом. Есть ли кто-нибудь, кто мог бы объяснить мне, что я делаю неправильно? Вот код, который я использую в своей функции Form_Load:

        MonthCalendar c = new MonthCalendar();
        lbl_date.Text = c.TodayDate.ToString("dd/MM/yyyy");

        loadEventDisplay();

        string dirPath = @"E:\Calendar\";
        List<string> files = new List<string>(Directory.EnumerateFiles(dirPath));
        foreach (var file in files)
        {
            string year = file.Substring(18, 4);
            string month = file.Substring(15, 2);
            string day = file.Substring(12, 2);

            DateTime[] dt = new DateTime[]   
            {
                    new DateTime(Int32.Parse(year), Int32.Parse(month), Int32.Parse(day))
            };

          // The date format I am using on that line is actually the same that works with the graphic interface
            c.AddBoldedDate(DateTime.Parse(day+"/"+month+"/"+year)); 
            c.UpdateBoldedDates();

Заранее спасибо!


person Y.Paulet    schedule 05.02.2017    source источник
comment
На что вы ориентируетесь: Winforms, WPF, ASP..? Всегда правильно отмечайте свой вопрос!   -  person TaW    schedule 05.02.2017
comment
Ваш код выглядит нормально. Скорее всего, ваши даты не совпадают. Но, конечно, нет смысла постоянно инициализировать массив. Вместо этого используйте List‹DateTime›, объявите его вне цикла и добавьте его как.ToaRRay() после цикла!   -  person TaW    schedule 05.02.2017
comment
Я пытался таким образом, но похоже, что свойство BoldedDates не работает. Спасибо за ваше время в любом случае.   -  person Y.Paulet    schedule 08.02.2017
comment
Хм, ну, я попробовал, и это, безусловно, работает здесь.   -  person TaW    schedule 08.02.2017


Ответы (1)


Возможно, вы хотите просто использовать элемент управления календаря месяца.

Вот код, который поможет:

DateTime[] myDates = {myDate1, myDate2};

calendar.BoldedDates = myDates;

Надеюсь, это поможет. См. здесь

person Daniel Grist    schedule 05.02.2017
comment
Я создал тестовую кнопку, чтобы более точно увидеть, что не так, но моя дата все еще не выделена жирным шрифтом. Вот код: private void button1_Click(object sender, EventArgs e) { DateTime[] dateTimes = new DateTime[] { new DateTime(2017, 2, 10), }; cal.BoldedDates = dateTimes; cal.UpdateBoldedDates(); } - person Y.Paulet; 08.02.2017