如何更改 Calendar 控件的 显示 属性呢 .
比如,我希望只显示 本月的日期,其他月份的都不显示 .
这就要用到 DayRender 事件
DayRender是Calendar控件的一个相对重要的事件.它可以用来在Calendar控件中所有日期的”长相”.这个事件使用了一个DayRenderEventArgs对象作为其参数.后者则包括两个属性:Cell和Day.在MSDN中,对于这两个属性有如下的描述:
| 属性 | 说明 |
| Cell | 获取表示呈现在 Calendar 控件中的单元格的 TableCell 对象 |
| Day | 获取表示呈现在 Calendar 控件中的日期的 CalendarDay |
下面运用它们来完成一些操作:
1).隐去Calendar控件中的非指定月的日期
2)为特定的日期添加备注
protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
{
if (e.Day.Date.Month == System.DateTime.Now.Month)
e.Cell.Text = e.Day.Date.Day.ToString();
else
{
e.Cell.Text = null;
}
}
其他的一些用法
// 注意这将会覆盖WeekendDayStyle
/*
if (!e.Day.IsOtherMonth && e.Day.IsWeekend)
e.Cell.BackColor = System.Drawing.Color.LightGreen;
// 在单元格中显示“Happy New Year!”
if (e.Day.Date.Month == 2 && e.Day.Date.Day == 28)
e.Cell.Controls.Add(new LiteralControl("<br/>Happy New Year!"));
*/