Практическое руководство. Отображение определенных дней полужирным шрифтом в элементе управления MonthCalendar в Windows Forms

В элементе управления Windows Forms MonthCalendar дни могут отображаться полужирным шрифтом либо как уникальные даты, либо как повторяющиеся даты. Это позволяет привлечь внимание к особым датам, таким как праздники и выходные дни.

Для управления этой функцией используются три свойства. Свойство BoldedDates содержит отдельные даты. Свойство AnnuallyBoldedDates содержит даты, которые отображаются полужирным шрифтом каждый год. Свойство MonthlyBoldedDates содержит даты, которые отображаются полужирным шрифтом каждый месяц. Каждое из этих свойств содержит массив объектов DateTime. Чтобы добавить или удалить дату из одного из этих списков, необходимо добавить или удалить объект DateTime.

Отображение даты полужирным шрифтом

  1. Создайте объекты DateTime.

    Dim myVacation1 As Date = New DateTime(2001, 6, 10)  
    Dim myVacation2 As Date = New DateTime(2001, 6, 17)  
    
    DateTime myVacation1 = new DateTime(2001, 6, 10);  
    DateTime myVacation2 = new DateTime(2001, 6, 17);  
    
    DateTime myVacation1 = DateTime(2001, 6, 10);  
    DateTime myVacation2 = DateTime(2001, 6, 17);  
    
  2. Выделите отдельную дату полужирным шрифтом, вызвав метод AddBoldedDate, AddAnnuallyBoldedDate или AddMonthlyBoldedDate элемента управления MonthCalendar.

    MonthCalendar1.AddBoldedDate(myVacation1)  
    MonthCalendar1.AddBoldedDate(myVacation2)  
    
    monthCalendar1.AddBoldedDate(myVacation1);  
    monthCalendar1.AddBoldedDate(myVacation2);  
    
    monthCalendar1->AddBoldedDate(myVacation1);  
    monthCalendar1->AddBoldedDate(myVacation2);  
    

    –или–

    Выделите полужирным шрифтом сразу несколько дат, создав массив объектов DateTime и назначив его одному из свойств.

    Dim VacationDates As DateTime() = {myVacation1, myVacation2}  
    MonthCalendar1.BoldedDates = VacationDates  
    
    DateTime[] VacationDates = {myVacation1, myVacation2};  
    monthCalendar1.BoldedDates = VacationDates;  
    
    Array<DateTime>^ VacationDates = {myVacation1, myVacation2};  
    monthCalendar1->BoldedDates = VacationDates;  
    

Отображение даты обычным шрифтом

  1. Снимите выделение полужирным шрифтом для отдельной даты, вызвав метод RemoveBoldedDate, RemoveAnnuallyBoldedDate или RemoveMonthlyBoldedDate.

    MonthCalendar1.RemoveBoldedDate(myVacation1)  
    MonthCalendar1.RemoveBoldedDate(myVacation2)  
    
    monthCalendar1.RemoveBoldedDate(myVacation1);  
    monthCalendar1.RemoveBoldedDate(myVacation2);  
    
    monthCalendar1->RemoveBoldedDate(myVacation1);  
    monthCalendar1->RemoveBoldedDate(myVacation2);  
    

    –или–

    Снимите выделение полужирным шрифтом для всех дат из одного из трех списков, вызвав метод RemoveAllBoldedDates, RemoveAllAnnuallyBoldedDates или RemoveAllMonthlyBoldedDates.

    MonthCalendar1.RemoveAllBoldedDates()  
    
    monthCalendar1.RemoveAllBoldedDates();  
    
    monthCalendar1->RemoveAllBoldedDates();  
    
  2. Обновите внешний вид шрифта, вызвав метод UpdateBoldedDates.

    MonthCalendar1.UpdateBoldedDates()  
    
    monthCalendar1.UpdateBoldedDates();  
    
    monthCalendar1->UpdateBoldedDates();  
    

См. также