Cómo: Mostrar días específicos en negrita con el control MonthCalendar de formularios Windows Forms

El control MonthCalendar de Windows Forms puede mostrar días en negrita, ya sea como fechas singulares o de forma repetida. Puede hacerlo para llamar la atención sobre fechas especiales, como los días festivos y los fines de semana.

Tres propiedades controlan esta característica. La propiedad BoldedDates contiene fechas únicas. La propiedad AnnuallyBoldedDates contiene fechas que aparecen en negrita cada año. La propiedad MonthlyBoldedDates contiene fechas que aparecen en negrita cada mes. Cada una de estas propiedades contiene una matriz de objetos DateTime. Para agregar o quitar una fecha de una de estas listas, debe agregar o quitar un objeto DateTime.

Para que una fecha aparezca en negrita

  1. Cree los objetos 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. Cree una sola fecha en negrita llamando al método AddBoldedDate, AddAnnuallyBoldedDate o AddMonthlyBoldedDate del control MonthCalendar.

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

    -o bien-

    Cree un conjunto de fechas en negrita a la vez mediante la creación de una matriz de objetos DateTime y su asignación a una de las propiedades.

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

Para que una fecha aparezca en la fuente normal

  1. Haga que una sola fecha en negrita aparezca en la fuente normal llamando al método RemoveBoldedDate, RemoveAnnuallyBoldedDate o RemoveMonthlyBoldedDate.

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

    -o bien-

    Quite todas las fechas en negrita de una de las tres listas llamando al método RemoveAllBoldedDates, RemoveAllAnnuallyBoldedDates o RemoveAllMonthlyBoldedDates.

    MonthCalendar1.RemoveAllBoldedDates()  
    
    monthCalendar1.RemoveAllBoldedDates();  
    
    monthCalendar1->RemoveAllBoldedDates();  
    
  2. Actualice la apariencia de la fuente llamando al método UpdateBoldedDates.

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

Consulte también