设置在日历中显示的日期范围
set range of date to display in calendar
我有这个 asp.net 日历控件:
<asp:Calendar runat="server" ID="calendar" SelectionMode="Day" ondayrender="DateRange" />
及其背后的代码:
protected void DateRange(object sender, DayRenderEventArgs e)
{
//do some codes here to set the range of the calendar to display
}
我还没有对 DateRange 执行任何操作,因为我不知道它的算法。
如果我希望我的日历控件只显示特定的月份和日期:
示例:
仅显示范围(2015 年 7 月 4 日 - 2016 年 3 月 15 日)//后面没有内容
是否可以更改默认日历方法以仅显示上面的特定月份、日期?
请帮忙,我是日历事件及其在 c# 中的内置函数的新手。
你不能改变什么,只能改变它的显示方式,你可以让它不可选择:
protected void DateRange(object sender, DayRenderEventArgs e)
{
DateTime rangeStart = new DateTime(2015, 7, 4);
DateTime rangeEnd = new DateTime(2016, 3, 15);
if (e.Day.Date < rangeStart || e.Day.Date > rangeEnd)
{
e.Day.IsSelectable = false;
e.Cell.ForeColor = System.Drawing.Color.Gray;
}
}
我有这个 asp.net 日历控件:
<asp:Calendar runat="server" ID="calendar" SelectionMode="Day" ondayrender="DateRange" />
及其背后的代码:
protected void DateRange(object sender, DayRenderEventArgs e)
{
//do some codes here to set the range of the calendar to display
}
我还没有对 DateRange 执行任何操作,因为我不知道它的算法。
如果我希望我的日历控件只显示特定的月份和日期:
示例: 仅显示范围(2015 年 7 月 4 日 - 2016 年 3 月 15 日)//后面没有内容
是否可以更改默认日历方法以仅显示上面的特定月份、日期?
请帮忙,我是日历事件及其在 c# 中的内置函数的新手。
你不能改变什么,只能改变它的显示方式,你可以让它不可选择:
protected void DateRange(object sender, DayRenderEventArgs e)
{
DateTime rangeStart = new DateTime(2015, 7, 4);
DateTime rangeEnd = new DateTime(2016, 3, 15);
if (e.Day.Date < rangeStart || e.Day.Date > rangeEnd)
{
e.Day.IsSelectable = false;
e.Cell.ForeColor = System.Drawing.Color.Gray;
}
}