我希望能够在日历控件中设置某些日期的样式。在我的申请中,我可以附上日期的注释(例如15.09.2011 - >约翰的生日)。
附有一个或多个音符的日期应采用不同的样式。我怎样才能做到这一点?
答案 0 :(得分:2)
如果您使用的是标准的ASP.NET日历控件,则可以通过实现DayRender(...)事件处理程序来设置日期样式。为Calendar控件创建的每一天都会引发DayRender事件。
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.calendar.dayrender.aspx
您可以在此处查看您正在处理的日期并为其设置样式。在您的情况下,您可以在此处检查日期是否附有注释。如果是这样,你会给它一种不同的风格。
以下是演示此方法的示例:
这个例子标志着所有印度假期。
一些快速代码:
protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
{
// Check if there is a note attached to the day (e.Day.Date) which is being
// rendered.
bool hasNote = ....;
// Style cell (which contains the date) if it has a note
if (hasNote)
{
e.Cell.BackColor = System.Drawing.Color.Yellow;
}
}