Практическое руководство. Изменение внешнего вида элемента управления MonthCalendar в Windows Forms

Обновлен: Ноябрь 2007

Предусмотрено множество возможностей настройки внешнего вида элемента управления Windows Forms MonthCalendar. Например, предоставляется возможность выбора цветовой схемы, а также отображения или скрытия номеров недель или текущей даты.

Чтобы изменить цветовую схему календаря

  • Установите свойства TitleBackColor, TitleForeColor и TrailingForeColor. Свойство TitleBackColor также определяет цвет шрифта для дней недели. Свойство TrailingForeColor определяет цвет дат, предшествующих и следующих за отображаемым месяцем или месяцами.

    MonthCalendar1.TitleBackColor = System.Drawing.Color.Blue
    MonthCalendar1.TrailingForeColor = System.Drawing.Color.Red
    MonthCalendar1.TitleForeColor = System.Drawing.Color.Yellow
    
    monthCalendar1.TitleBackColor = System.Drawing.Color.Blue;
    monthCalendar1.TrailingForeColor = System.Drawing.Color.Red;
    monthCalendar1.TitleForeColor = System.Drawing.Color.Yellow;
    
    monthCalendar1.set_TitleBackColor(System.Drawing.Color.get_Blue());
    monthCalendar1.set_TrailingForeColor(System.Drawing.Color.get_Red());
    monthCalendar1.set_TitleForeColor(System.Drawing.Color.get_Yellow());
    
    monthCalendar1->TitleBackColor = System::Drawing::Color::Blue;
    monthCalendar1->TrailingForeColor = System::Drawing::Color::Red;
    monthCalendar1->TitleForeColor = System::Drawing::Color::Yellow;
    

Чтобы отобразить текущую дату внизу элемента управления

  • Установите для свойства ShowToday значение true. В приведенном ниже примере переключение между отображением и скрытием текущей даты происходит при выполнении двойного щелчка на форме.

    Private Sub Form1_DoubleClick(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.DoubleClick
       ' Toggle between True and False.
       MonthCalendar1.ShowToday = Not MonthCalendar1.ShowToday
    End Sub
    
    private void Form1_DoubleClick(object sender, System.EventArgs e)
    {
       // Toggle between True and False.
       monthCalendar1.ShowToday = !monthCalendar1.ShowToday;
    }
    
    private void Form1_DoubleClick(System.Object sender, System.EventArgs e) 
    {
       // Toggle between True and False.
       monthCalendar1.set_ShowToday(!monthCalendar1.get_ShowToday());
    } //Form1_DoubleClick 
    
    private:
       System::Void Form1_DoubleClick(System::Object ^  sender,
          System::EventArgs ^  e)
       {
          // Toggle between True and False.
          monthCalendar1->ShowToday = !monthCalendar1->ShowToday;
       }
    

    (Visual C#, Visual C++) Добавьте в конструктор формы следующий код, чтобы зарегистрировать обработчик событий.

    this.DoubleClick += new System.EventHandler(this.Form1_DoubleClick);
    
    this->DoubleClick += gcnew System::EventHandler(this,
       &Form1::Form1_DoubleClick);
    

Чтобы отобразить номера недель

  • Установите для свойства ShowWeekNumbers значение true. Это свойство можно задать в коде или в окне "Свойства".

    Номера недель отображаются в отдельном столбце слева от первого дня недели.

    MonthCalendar1.ShowWeekNumbers = True
    
    monthCalendar1.ShowWeekNumbers = true;
    
    monthCalendar1.set_ShowWeekNumbers(true);
    
    monthCalendar1->ShowWeekNumbers = true;
    

См. также

Задачи

Практическое руководство. Выбор диапазона дат в элементе управления MonthCalendar в Windows Forms

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

Практическое руководство. Отображение более чем одного месяца в элементе управления MonthCalendar в Windows Forms

Другие ресурсы

Элемент управления MonthCalendar (Windows Forms)