第04章 Web服务器控件.ppt
内容要点 其它标准控件 用户控件 示例(续) 示例(续) 示例(续) 示例(续) 示例要点 MultiView控件与View控件 验证控件 FileUpload控件 控件状态 两层结构 表示层(显示层) 业务层(逻辑层) Calendar控件 Calendar控件就是日历控件,负责在页面上显示日历并接受用户选择日期的操作。当需要在网页中显示日期或需要用户输入或确认日期时,就需要这样一个控件。 使用Calendar控件可以执行以下操作: 显示和选择日期 启用日期选定 自定义日历的外观 捕获用户与Calendar控件之间的交互 在Calendar控件中显示数据库信息 Calendar控件 日期获取模式 Calendar控件有四种基本日期获取模式,以指定用户在控件中选定日、周或整个月份。通过控件的SelectionMode属性来实现: void Page_Load(Object Sender, EventArgs e) { Calendar1.SelectionMode = (CalendarSelectionMode)DropDownList1.SelectedIndex; if(Calendar1.SelectionMode == CalendarSelectionMode.None) Calendar1.SelectedDates.Clear(); } protected void click(object sender, EventArgs e){ Label1.Text = "当前选择的日期是" + Calendar1.SelectedDate.ToLongDateString (); } Calendar控件的外观属性 Calendar控件的样式 自定义特别日 日历控件还可以定义特别日的外观和显示,如节日、纪念日等。可以包括以下操作: 突出显示某些日。例如,以不同的颜色显示假日。 向日显示中添加信息,例如约会或事件信息。 自定义用户可以单击以选择某日的链接文本。 自定义特别日利用的是Calendar控件的DayRender事件。 void DayRender(object source, DayRenderEventArgs e) { if ( !e.Day.IsWeekend) e.Cell.BackColor = System.Drawing.Color.Yellow; if (e.Day.Date.Day == (14)) { e.Cell.Controls.Add(new LiteralControl("开会")); e.Day.IsSelectable = true; } else e.Day.IsSelectable = false; } protected void Calendar1_SelectionChanged(object sender, EventArgs e) { int i; i = Calendar1.SelectedDates.Count; if (i == 1) Label1.Text = "当前选择的日期是:" + Calendar1.SelectedDate.ToLongDateString(); else Label1.Text = "当前选择的日期是:" + Calendar1.SelectedDates[0] + "到" + Calendar1.SelectedDates[i - 1]; } void Page_Load(object sender, EventArgs e) { holidays[9, 10] = "教师节"