注册 登录
编程论坛 ASP.NET技术论坛

[求助]日历控件中的问题

fzmfb 发布于 2007-04-21 13:37, 559 次点击

.aspx文件如下
<asp:Calendar ID="rili1" runat="server"
OnSelectionChanged="date_selected"
DayNameFormat="Full"
FirstDayOfWeek="Monday"
SelectionMode="DayWeek"
NextPrevFormat="ShortMonth"
SelectMonthText="month"
SelectWeekText="week"
DayHeaderStyle-BackColor="yellowGreen"
Height="243px" Width="594px">
<TodayDayStyle Font-Bold="True" ForeColor="Red" />
<WeekendDayStyle ForeColor="DarkGoldenrod" />
<DayHeaderStyle Font-Bold="True" />
<OtherMonthDayStyle ForeColor="Gray" />
<NextPrevStyle Font-Underline="true" ForeColor="blueViolet" />
<TitleStyle BackColor="HotPink" ForeColor="White" Font-Bold="True" />
<SelectedDayStyle BackColor="White" Font-Bold="True" />
<SelectorStyle BackColor="yellow" ForeColor="Navy" Font-Size="9pt" />
</asp:Calendar>

.cs代码如下
protected void date_selected(object sender, EventArgs e)
{
switch(rili1.SelectedDates.Count)
{
case(0):
{
Response.Write("您没有选择日期");
break;
}
case(1):
{
Response.Write("您选择的日期是"+rili1.SelectedDate.ToLongDateString());
break;
}
case(7):
{
Response.Write("您选择的是一周的开始");
break;
}
default:
Response.Write("您选择的是一个月的开始"+rili1.SelectedDate.ToShortDateString());
break;
}

}
这个程序是正确的但是红色的地方我不懂
给我解释哈
谢谢!
可以把代码粘贴回去试哈还挺有意思的!

3 回复
#2
IPV62007-04-21 14:28
说说我的看法吧!
SelectedDates.Count的你选择的日期对象的个数,如果你点击一个日期则获得一个对象SelectedDates.Count的值就是1。
你选择的是一周那获得的就是7个日期对象,SelectedDates.Count的值就是7。
如果所有的case都不符合,它将和default 匹配。
#3
fzmfb2007-04-23 20:03
这个我知道
不明白的就是default后面的那句话:为什么点击的日期数总和不是0,1或者7就是一个月的开始?而且你把selectionmode的值改为day这个题目就无法做了
#4
fzmfb2007-04-23 20:07
你选择的是一周那获得的就是7个日期对象,SelectedDates.Count的值就是7。
上面这句话是你说的也有问题因为我根本不能选择7个日期而是在控件的左侧点击week得到的
不信你可以把代码粘回去试试
1