ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章

上传人:E**** 文档编号:89334112 上传时间:2019-05-23 格式:PPT 页数:81 大小:1.43MB
返回 下载 相关 举报
ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章_第1页
第1页 / 共81页
ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章_第2页
第2页 / 共81页
ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章_第3页
第3页 / 共81页
ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章_第4页
第4页 / 共81页
ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章》由会员分享,可在线阅读,更多相关《ASP.NET Web 应用系统开发 教学课件 ppt 作者 于华 1-5 第3章(81页珍藏版)》请在金锄头文库上搜索。

1、第3章 常用Web服务器控件,3.1 HTML服务器控件 3.2 ASP.NET服务器控件 3.3 实战演练,在ASP.NET程序中,控件是页面的基本单元,直接和用户交互的都是控件。Web应用程序支持许多控件,这些控件可以与用户进行交互。根据不同控件提供的功能,可将控件划分为不同的类型,如HTML服务器控件、ASP.NET服务器控件等。 使用控件,使得程序员不用详细了解HTML元素就可以设计页面。在Visual Studio 2010中,程序员可以把Web控件拖曳到页面上来设计页面,过程轻松、简便。,3.1 HTML服务器控件 HTML服务器控件属于 HTML 元素(或采用其他支持的标记的元素

2、,例如 XHTML),它包含多种特性,使其可以在服务器代码中进行编程。默认情况下,服务器上无法使用 ASP.NET网页中的HTML元素,这些元素将被视为不透明文本并传递给浏览器。但是,通过将HTML元素转换为HTML服务器控件,可将其公开为在服务器上编程的元素。表3.1列举了HTML服务器控件及其对应的HTML元素。,表3.1 HTML服务器控件及其对应的HTML元素,页中的任何HTML元素都可以通过添加特性runat=“server“来转换为HTML服务器控件。在分析过程中,ASP.NET页框架将创建包含runat=“server“特性的所有元素的实例。若要在代码中以成员的形式引用该控件,则

3、还应为该控件分配id特性。例如从一个简单的input控件开始,代码如下: 可以将其转换为HTML服务器控件,并添加id和runat属性,代码如下: ,在ASP.NET程序中,HTML服务器控件也可以直接使用ASP.NET服务器控件相应的标记来表示,统一的格式为:以“”结束,在其间可以设置各种属性,如: ,当客户端请求该控件时,服务器就会把下面的代码发送到客户端: Label ,3.1.1 Label控件和Literal控件 Label和Literal两个控件都用于运行时状态页面的文本显示,要显示的文本内容在相应控件的Text属性中设置。在运行时可以使用代码改变Label控件和Literal控件

4、的显示文本(Text)或字体(Font)等属性,如: ,当客户端请求该控件时,服务器就会把下面的代码发送到客户端: This is a Literal This is a Label 可以看出,应用Label和Literal控件的区别在于“上、下文环境不同”: Label控件的文本包含在标签内(允许控制文本格式,并可以使用AJAX控件扩展Label控件)。 Literal控件的文本并没有被任何标签所包含(不能控制文本格式,但可以放置于区域来动态生成页面的title值)。,3.1.2 TextBox控件 使用TextBox控件可以显示或编辑非格式化文本。TextBox的常用用途是在表单中编辑非格

5、式化文本。例如,如果一个表单要求输入用户姓名、电话号码等,则可以使用TextBox控件来进行文本输入。表3.2列出了TextBox控件常用的属性。,表3.2 TextBox控件常用的属性,WebControl类的常用事件有Init、Load及PreRender等(详见表2.2),除了这些从WebControl类继承的事件外,在文本框的内容被修改或控件失去输入焦点时TextBox控件都会引发TextChanged事件,该事件也是TextBox控件的默认事件(详见表2.4)。在应用TextChanged事件之前要将TextBox控件的AutoPostBack属性设置为true。,3.1.3 Hid

6、denField控件 隐藏字段是HTML页面开发者处理页面间信息传递时的常用技巧,它提供了一种存储页面状态信息的方法。 在HTML页面中,可以用下面的代码实现一个隐藏字段: 可以使用HiddenField控件生成浏览器中使用的隐藏字段,当该控件的value属性值与上一次提交的不同时,就会引发回发。,3.1.4 Button控件 按钮控件将表单提交到服务器,从而激活服务器端处理进程。在System.Web.UI. WebControls命名空间中有三种ASP.NET按钮。 (1) Button控件:标准的按钮控件。 (2) LinkButton控件:介于标准的按钮控件和HyperLink控件之间

7、的一类按钮。在用户看起来,LinkButton像一个超链接(文本是有颜色、带下划线的),但实际上它是一个执行标准的回发行为的超链接。,(3) ImageButton控件:除了在浏览器的用户界面中用图片代替了按钮外,该控件与标准按钮执行完全相同的功能。 这三个控件类型除了继承自WebControl类的属性、方法和事件外,还包含下面两个事件: Click:该事件在控件被单击且没有与之相关联的命令名时引发(换言之,没有为Button控件的CommandName属性赋值)。,Command:当控件被点击且“Sort”、“Delete”或“Select”(常出现在GridView、DataList等数据

8、控件中)这样的命令名已经被指派给按钮控件的CommandName属性时,该事件被触发并传递一个CommandEventArgs类型的参数,该参数包含CommandName(命令名)和CommandArgument(可选参数)两个成员。,3.1.5 HyperLink控件 HyperLink控件看起来类似于LinkButton控件,但二者有本质区别:HyperLink控件不进行回发,直接导航到目标URL;LinkButton则提交表单,并且如果事件处理程序允许,LinkButton也可以导航到目标URL。 如果排除HyperLink控件可以使用服务器编码的功能,它的行为非常类似于HTML中的元素

9、控件。实际上,HyperLink控件在客户端浏览器上生成的也是HTML的锚元素(例如),该元素的属性与HyperLink控件的属性呈现一种对应关系。,HyperLink控件有四个特有属性: ImageUrl:显示图片的路径地址,否则显示Text属性中的文本。 NavigateUrl:要链接到的目标URL。 Text:显示文本。如果同时设置了Text及ImageUrl属性,将优先使用ImageUrl,文本只在图片无效时显示。 Target:定义要加载链接页面的目标窗口或框架,该属性不区分大小写且必须以a到z的字符开头,但表3.3中以下划线开头的特定值(HTML的锚元素的Target属性的特定值)

10、除外。,表3.3 Target属性的特定值,3.1.6 图片相关控件 图片是大部分网站的重要组成部分。ASP.NET提供了多个用于显示图片的控件,这里对其中的Image和ImageMap两个控件做简单介绍。 1Image控件 Image控件的功能有限,它用于网页上图片的显示,如果图片无效,则显示替代的文本信息。除了像Init和Load这样从Control类继承的事件外,Image控件没有任何与用户互动引发的事件。因此,在代码中设置显示哪张图片以及图片在页面上哪里对齐,一般直接使用HTML语言中的元素。本章实战演练部分用户登录模块中显示验证码图片的HTML代码如下:, 其中,checkcode.

11、aspx动态生成验证码图片的ASP.NET页,具体实现方法见5.7.4节用户登录模块代码设计相关内容。,2ImageMap控件 HTML提供了元素来定义某个图片的热点区域,即图像映射。在ASP.NET中,ImageMap控件提供了此功能。定义一张访问世界各地的不同URL的地图图片(访问哪个大洲或国家要取决于用户点击的位置)以及通过点击图片中代表相关选项的不同区域来让用户更改配色方案和网站字体等是ImageMap控件的常见用途。这些情况下的超链接经常是一个客户端函数,浏览器执行它来取代不同的URL链接。 ImageMap控件派生自Image类,并给这个类添加了许多属性和一个Click事件,使该类

12、有了图像映射的功能。ImageMap控件的主要属性如表3.4所示。,表3.4 ImageMap控件的主要属性,表中,HotSpots属性为ImageMap控件中所包含HotSpot对象的集合。它包含三种类型的热点区域子类: RectangleHotSpot:定义了一个图片的矩形区域,包括Top、Bottom、Left和Right属性,这几个属性相对于图片的左上角以像素为单位取值。 CircleHotSpot:定义了一个图片的圆形区域,包括指定圆心的x、y坐标属性,这两个属性相对于图片的左上角,还有一个指定该圆形半径的Radius属性。 PolygonHotSpot:定义了一个图片的多边形区域,

13、由该区域轮廓线段端点的x、y坐标组成的列表,端点坐标间以逗号分隔,其坐标的相对位置为图片的左上角。,创建HotSpot对象的步骤如下: 首先,在ImageMap控件上,单击鼠标右键,在弹出的快捷菜单中选择“属性”命令,弹出“属性”窗口。在“属性”窗口中,单击HotSpots后的设置按钮,弹出 “HotSpot集合编辑器”窗口。在该窗口中,可以选择“添加”按钮后的下拉菜单按钮来添加RectangleHotSpot、CircleHotSpot、PolygonHotSpot三种子对象,并设置其属性,如图3-1所示。 如要在一卡通人物的额头和嘴巴位置设置热区,单击某个热区后会弹出相应的提示。例如,单击

14、卡通人物的嘴巴,则弹出“点到嘴巴啦!”的提示,效果如图3-2所示。,图3-1 HotSpot集合编辑器,图3-2 单击ImageMap控件中的热区弹出提示信息,如图3-2所示设置ImageMap控件的HotSpots属性,相关代码如下: ,在ImageMap控件的Click事件中,通过PostBackValue属性获取单击某个热区后的返回值,然后弹出相应的提示,事件处理程序代码如下: protected void ImageMap1_Click(object sender, ImageMapEventArgs e) string backValue = e.PostBackValue; /获取

15、所点热区的PostBackValue string str = string.Empty; switch (backValue), case “嘴巴“: str = “点到嘴巴啦!“; break; case “额头“: str = “点到额头啦!“; break; /弹出相应提示信息 ClientScript.RegisterStartupScript(this.GetType(),“,“alert(“ +str+ “);“, true); ,3.1.7 值的选择 有多个ASP.NET服务器控件可以让用户选择一个或多个值,常见的有CheckBox、RadioButton、CheckBoxLi

16、st、RadioButtonList、ListBox、DropDownList以及BulletedList等。 1CheckBox控件 CheckBox控件给用户提供了一种选择Boolean型数据(例如,是或否)的方式。如果把多个CheckBox控件组织在一起(不要和稍后讨论的CheckBoxList控件混淆),就可以做多项选择。表3.5列出了CheckBox控件并非继承自WebControl类的属性。,表3.5 CheckBox控件并非继承自WebControl类的属性,如果想让某个CheckBox控件被选中,可以通过代码将其Checked属性设为true,也可以直接在其属性面板中将Checked属性设为true。 2RadioButton控件 RadioButton控件与C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号