Como alterar a aparência do controle MonthCalendar dos Windows Forms
O controle MonthCalendar do Windows Forms permite personalizar a aparência do calendário de várias maneiras. Por exemplo, você pode definir o esquema de cores e optar por exibir ou ocultar números de semana e a data atual.
Para alterar o esquema de cores do calendário do mês
Definir propriedades como TitleBackColor, TitleForeColor e TrailingForeColor. A propriedade TitleBackColor também determina a cor da fonte para os dias da semana. A propriedade TrailingForeColor determina a cor das datas que precedem e seguem o mês ou meses exibidos.
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->TitleBackColor = System::Drawing::Color::Blue; monthCalendar1->TrailingForeColor = System::Drawing::Color::Red; monthCalendar1->TitleForeColor = System::Drawing::Color::Yellow;
Nota
Começando com o Windows Vista e dependendo do tema, definir algumas propriedades pode não alterar a aparência do calendário. Por exemplo, se o Windows estiver definido para usar o tema Aero, definir as propriedades BackColor, TitleBackColor, TitleForeColorou TrailingForeColor não terá efeito. Isso ocorre porque uma versão atualizada do calendário é renderizada com uma aparência derivada em tempo de execução do tema atual do sistema operacional. Se você quiser usar essas propriedades e habilitar a versão anterior do calendário, poderá desabilitar estilos visuais para seu aplicativo. Desabilitar estilos visuais pode afetar a aparência e o comportamento de outros controles em seu aplicativo. Para desabilitar estilos visuais no Visual Basic, abra o Designer de Projeto e desmarque a caixa de seleção Habilitar estilos visuais XP. Para desabilitar estilos visuais em C#, abra Program.cs e comente
Application.EnableVisualStyles();
. Para obter mais informações sobre estilos visuais, consulte Habilitando estilos visuais.
Para exibir a data atual na parte inferior do controle
Defina a propriedade ShowToday como
true
. O exemplo abaixo alterna entre exibir e omitir a data de hoje quando o formulário é clicado duas vezes.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: System::Void Form1_DoubleClick(System::Object ^ sender, System::EventArgs ^ e) { // Toggle between True and False. monthCalendar1->ShowToday = !monthCalendar1->ShowToday; }
(Visual C#, Visual C++) Coloque o código a seguir no construtor do formulário para registrar o manipulador de eventos.
this.DoubleClick += new System.EventHandler(this.Form1_DoubleClick);
this->DoubleClick += gcnew System::EventHandler(this, &Form1::Form1_DoubleClick);
Para exibir números da semana
Defina a propriedade ShowWeekNumbers como
true
. Você pode definir essa propriedade no código ou na janela Propriedades.Os números da semana aparecem em uma coluna separada à esquerda do primeiro dia da semana.
MonthCalendar1.ShowWeekNumbers = True
monthCalendar1.ShowWeekNumbers = true;
monthCalendar1->ShowWeekNumbers = true;
Consulte também
.NET Desktop feedback