《第8章 Rich控件》由会员分享,可在线阅读,更多相关《第8章 Rich控件(21页珍藏版)》请在金锄头文库上搜索。
1、第8章 Rich控件,本章重点,Calendar控件 AdRotator控件 MultiView和View控件 Wizard控件,Rich控件,ASP.NET除了提供诸如TextBox控件、Button等控件外,还提供了很多复杂的控件,本书把这些控件统称为Rich控件,使用这些控件可以创建复杂的页面效果。8.1 Calendar控件 Calendar控件用来在Web页面中显示日历中的可选日期,并显示与特定日期关联的数据。使用它可以完成如下的功能:1. 与用户交互,例如在用户选择一个日期或一个日期范围时显示相关的内容。2. 自定义日历的外观。3. 在日历中显示数据库中的信息。,8.1 Calen
2、dar控件,Calendar控件同所有的Web控件一样也是一个可编程的对象,它在页面中定义代码如下:日历控件在页面上显示一个月的日历视图,使用两端的箭头可以逐月浏览。当选择每一日期时,该日期就在一个灰色的盒子里呈高亮度显示,而且会引发页面回送。程序员可以利用这个特点对日历控件编程。,8.1 Calendar控件,Calendar控件是类Calendar的对象,类Calendar将时间分段来表示,例如分成星期、月和年,日历将按时间单位(如星期、月和年)划分,每种日历中分成的段数、段的长度和起始点均不同。使用特定日历可以将任何时刻都表示成一组数值 。 Calendar的实现可以将特定日历范围内的任
3、何日期映射到一个类似的数值集,并且DateTime可以使用Calendar和DateTimeFormatInfo中的信息将这些数值集映射为一种文本表示形式。,8.1 Calendar控件,8.1.1 Calendar控件的外观设置有几种方法可以设置Calendar控件的外观:1. 使用“自动套用格式”对话框选择外观格式。2. 设置属性。3. 设置扩展样式属性。4. 自定义个别日期的呈现。,8.1 Calendar控件,8.1.2 Calendar控件的常用属性1.GetDayOfMonth:返回指定DateTime中的日期是该月的几号。2.GetDayOfWeek:返回指定DateTime中的
4、日期是星期几。3.GetDayOfYear:返回指定DateTime中的日期是该年中的第几天。4.GetDaysInMonth:返回指定月份中的天数。5.GetDaysInYear:返回指定年份中的天数。6.GetLeapMonth:计算指定年份或指定纪元年份的闰月。7.GetMonth:返回指定的DateTime中的月份。8.GetMonthsInYear:返回指定年份中的月数。9.GetWeekOfYear:返回年中包括指定DateTime中日期的星期。10.GetYear:将返回指定的DateTime中的年份 。11.SelectionChanged事件:当用户选取日期时,会驱动Sele
5、ctionChanged指定的事件。,8.1 Calendar控件,8.1.3 Calendar控件编程对Calendar控件编程主要是在它提供的三个事件中进行的,Calendar控件提供的事件如下:1. DayRender事件。2. SelectionChanged事件。3. VisibleMonthChanged事件。,8.2 AdRotator控件,AdRotator控件提供了一种在页面上显示广告的简便方法,该控件能够显示图形图像,当用户单击广告时,会将用户导向指定的URL,并且该控件能够从数据源中自动读取广告信息。AdRotator控件显示广告的方式有如下三种:1. 随机显示广告。2.
6、 对广告设置优先级别以使某些广告有更多显示频率。3. 编写循环逻辑来显示广告。,8.2 AdRotator控件,AdRotator控件可以从如下形式的数据源中读取数据:1. XML文件。2. 数据库。3. 自定义逻辑。为AdCreated事件创建一个处理程序,并在该事件中选择一条广告。,8.2 AdRotator控件,8.2.1 属性和方法AdRotator控件是类AdRotator的对象,提供了如下表所示的属性:,8.2 AdRotator控件,8.2.1 属性和方法类AdRotator为AdRotator控件提供了如下表所示的常用方法:,8.2 AdRotator控件,8.2.2 从数据源
7、中读取广告信息AdRotator控件通过自己的属性来定义一个广告体所需要的信息,但这些信息都是可选的,因此无论在XML文件中还是在数据库中定义广告体,都可以选用如下属性来作为广告体的信息:1. ImageUrl:要显示图像的URL。2. NavigateUrl :单击AdRotator控件后要转到页面的URL。3. AlternateText :图像不可用时显示的文本。4. Keyword :可用于筛选特定广告的广告类别。5. Impressions :一个指示广告可能显示频率的数值。6. Height :广告的高度。7. Width :广告的宽度。,8.3 MultiView和View控件,
8、MultiView控件用于定义View(视图)控件组,使用它可以定义一组View控件。View控件只有添加到MultiView控件中才能使用,其中每个View控件都包含其他控件,如标签、下拉列表等。该控件一次可以显示一个View控件,并公开该View控件内的标记和控件,从而可以实现多视图窗口。MultiView控件声明,代码如下: ,8.3 MultiView和View控件,MultiView控件有以下几个重要的属性和方法:1. ActiveViewIndex:获取或设置活动View控件的索引。MultiView控件按View控件页面上出现的顺序进行从1到n-1的编号,n表当前MultiVie
9、w控件中的View控件数量。如果显示添加到MultiView控件中的第1个View控件,该属性设置为“0”。2. Views:获取MultiView控件的View控件集合。3. Visble:用于设置MultiView控件在默认状态下是否可见。4. CreatedControlCollection:创建ControlCollection以保存MultiView控件的子控件。5. GetActiveView:返回MultiView控件的当前活动的View控件。6. SetActiveView:将指定的View控件设置为MultiView控件的活动视图。7. RemovedControl:在将Vi
10、ew控件从MultiView控件的Controls集合中移除后调用。8. OnActiveViewChanged事件:引发MultiView控件的ActiveViewChanged事件。,8.4 Wizard控件,Wizard控件可以创建多个视图的窗体,并且每次只显示一个窗体。 Wizard控件简化了许多与生成多个窗体以及收集用户输入操作相关的任务。 Wizard控件提供了一种简单的机制,允许轻松地生成步骤,添加新步骤或重新安排步骤、程序员不需要写任何代码就可以实现线性或非线性的导航,并自定义控件的用户导航。,8.4 Wizard控件,Wizard控件的声明方式如下: ,8.4 Wizard控
11、件,8.4.1 Wizard控件的结构,8.4 Wizard控件,8.4.1 Wizard控件的结构侧栏(SideBar):包含所有向导步骤的列表,这些列表内容来自WizardStep的属性Title值。对应的模板属性是SideBarTemplate。标题(Header):每个向导步骤提供一致的标题信息,对应的模板属性是HeaderTemplate。向导步骤集合(WizardSteps):Wizard控件的核心,必须逐个为向导的每个步骤定义内容。每个步骤需设置的属性和内含的控件都体现在元素中,所有的又包含在元素中。,8.4 Wizard控件,8.4.1 Wizard控件的结构导航按钮(NavigationButton):呈现形式与每个WizardStep的属性StepType有关 。,8.4 Wizard控件,8.4.2 Wizard控件的常用属性和事件,