第4章ASP.NETWeb服务器控件.ppt

上传人:知****量 文档编号:18345448 上传时间:2022-05-31 格式:PPT 页数:37 大小:1,011KB
返回 下载 相关 举报
第4章ASP.NETWeb服务器控件.ppt_第1页
第1页 / 共37页
第4章ASP.NETWeb服务器控件.ppt_第2页
第2页 / 共37页
点击查看更多>>
资源描述

《第4章ASP.NETWeb服务器控件.ppt》由会员分享,可在线阅读,更多相关《第4章ASP.NETWeb服务器控件.ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、ASP.NET Web 窗体是一项基于服务器的技术,即所有代码都是在服务器上运行的。客户端是用户的浏览器。ASP.NET Web 窗体页框架是可以在服务器上用于动态生成 Web 页的可缩放公共语言运行库编程模型。本章主要讲解ASP.NET Web 窗体的基本特性,以及创建ASP.NET 3.5 Web 窗体常用的服务器控件的使用方法。4.1ASP.NET Web窗体 4.2服务器控件概述4.3标准控件 4.4高级控件 表单的基本概念 HTML表单(form)是传统服务器端与浏览器端实现交互的重要手段。 表单是网页上的一个特定区域。回发和往返行程页面生存期ASP.NET页面声明周期通常情况下会经

2、历以下几个阶段。开始:在用户访问页面时,页面就进入了开始阶段。在该阶段,页面将确定请求是发回请求还是新的客户端请求,并设置 IsPostBack 属性。初始化:在页面开始页面访问之后,会初始化页面属性以及页面中的服务器控件等内容。加载:页面加载控件。验证:调用所有的验证程序控件的Vailidate方法,来设置各个验证程序控件和页的属性。回发事件:在回发事件中,页面会调用处理事件,对数据进行相应的处理并回发给客户端。呈现:获取服务器端回发的数据,呈现在客户端浏览器中,供用户浏览。卸载:完全呈现页面后,将页面发送到客户端并准备丢弃时,将调用卸载。 服务器控件的定义Web服务器控件是ASP.NET应

3、用程序中最常使用的控件,Web服务器控件位于System.Web.UI.WebControls命名空间中。所有的Web服务器控件都从WebControl基类派生,与HTML服务器控件相比,Web控件提供一个相对抽象的、一致的编程模型。服务器控件分类 HTML服务器控件 ASP.NET标准服务器控件 自定义服务器控件服务器控件的属性 用形式属性 连字符形式属性 内部嵌套形式属性服务器控件的事件 内部事件集 Web服务器控件中的回发和非回发事件Web服务器控件是ASP.NET应用程序中最常使用的控件,Web服务器控件位于System.Web.UI.WebControls命名空间中。所有的Web服务

4、器控件都从WebControl基类派生,与HTML服务器控件相比,Web控件提供一个相对抽象的、一致的编程模型。相对抽象是指Web服务器控件不必像HTML控件一样必须一一对应一个HTML标签,事实上很多复杂的Web服务器控件所输出的客户端代码非常复杂。Web服务器控件也具有一些独有的特性,如自动回发特性等。HTML服务器控件 由System.Web.UI.HtmlControls类实现 对应传统的HTML元素,添加相应的ID属性和runat=server属性可以使之成为运行在服务器端的控件 具备相应的属性、事件和方法Web服务器控件 由System.Web.UI.WebControls类实现

5、没有和HTML元素一一对应在下述情况可以选择使用HTML服务器控件喜欢与HTML相似的对象模型正在使用现存的HTML页工作,并且希望快速地添加Web窗体功能控件既需要运行客户端脚本也需要运行服务器端脚本由于带宽受到限制,所以需要进行大量的客户端处理来减少带宽的开销在下述情况可以选择使用Web服务器控件基于控件的事件驱动模式创建的Web页可以通过多种浏览器浏览只有Web服务器控件才能实现特定功能的场合由于带宽不受限制,所以Web服务器控件的“请求-响应”周期不会引起带宽问题 通常对于服务器控件的创建分为两种情况:一是使用IDE添加控件;二是动态创建控件。通过编程方式将控件添加到Web网页的方法如

6、下。(1)创建控件的示例并设置其属性,示例代码如下。Label lb = new Label();lb.Text = Sample Label;(2)将新控件添加到页上已有容器的Controls集合中,示例代码如下。Panel Panel1= new Panel();Panel1.Controls.Add(myLabel);控件属性ASP.NET服务器控件具有大量属性,这些属性是绝大多数服务器控件都具备的,共分为5大类:布局、数据、外观、行为和杂项。1常用形式属性这是一种最为常见的属性标记形式。这种形式的属性标记位于控件内部,与runat=server一起定义,代码如下。2连字符形式属性这种标

7、记形式的属性位于控件标记内部,带有连字符是这种形式属性的最大特征。控件属性3内部嵌套形式属性凡是具有这种标记形式的属性均为复杂属性。它是以嵌套形式在控件标记内部声明某属性集的子属性,代码如下。 1 2 3 4控件事件 内部事件集因为大多数Web窗体事件要求到服务器的往返过程以进行处理,所以这些事件可能影响窗体的性能。因此,服务器控件仅提供一组有限的内部事件。 Web服务器控件中的回发和非回发事件在Web服务器控件中,某些事件(通常是Click事件)会导致将窗体回发到服务器。可以指定控件的AutoPostBack属性,进行页面实时回发功能。用于文本输入和显示的标准控件TextBox控件Label

8、控件按钮控件 Button控件LinkButton控件ImageButton控件用于选择的列表控件DropDownList控件CheckBoxList控件RadioButtonList控件HyperLink控件Table控件4.3.1 用于文本输入和显示的标准控件在ASP.NET 3.5中提供了一些用于开发人机交互的窗口式控件,使界面更加直观,增加客户的体验度。用来获取用户输入的控件一般叫做文本输入控件,而经过计算机处理后的数据呈现在用户面前是通过显示控件来实现的。TextBox控件TextBox控件依赖TextMode属性的值来显示3种不同类型的输入框。TextMode属性接受以下3个值。S

9、ingleLine:显示单行输入框,一般用来获取少量的用户输入,如用户名。MultiLine:显示多行输入框,一般用来获取较多的用户输入,如文本描述。Password:显示文本被屏蔽的单行输入框,一般用来作为密码的输入框。TextBox控件TextBox控件的常用属性。属性描述AccessKey指定一个导向TextBox控件的键AutoPostBack在TextBox控件的内容发生变化时,自动把包含这个TextBox的表单传回服务器端Columns指定显示的列数Enabled禁用TextBox控件MaxLength指定用户输入到TextBox的数据长度的最大值(当TextMode设为Multi

10、line时无效)ReadOnly防止用户更改TextBox中的文本Rows指定显示的行数TabIndex指定TextBox控件的Tab顺序Wrap设置当TextMode属性值为Multiline时文本是否自动换行Label控件Label控件一般可以用来显示页面中具有标记意义的数据,或者呈现程序处理后返回的结果。在呈现控件时,任何赋给Label控件的Text属性的字符串将通过Label控件显示出来。可以给Text属性赋值简单的文本或HTML内容。 使用TextBox实现密码输入Label控件Label控件的常用属性 属性描述BackColor改变Label的背景色BorderColor设置呈现在

11、Label周围的边框的颜色BorderStyle设置显示在Label周围的边框,可用的值有NotSet、None、Dotted、Dashed、Solid、Double、Groove、Ridge、Inset和OutsetBorderWidth设置呈现的Label边框的宽度CssClass设置Label关联的CSS类Font设置Label的字体属性ForeColor设置Label呈现内容的颜色Style为Label的样式赋值ToolTip设置Label的title属性(在微软IE中,title属性显示成浮动的提示)ASP.NET 3.5中包含3种用于向服务器端提交表单的按钮控件,即Button、L

12、inkButton和ImageButton。这3种控件拥有同样的功能,但每种控件的外观截然不同。 Button控件Button控件是用来向服务器端提交表单的按钮。Button控件的属性属性描述AccessKey指定一个导向Button控件的键CommandArgument指定传给Command事件的命令参数CommandName指定传给Command事件的命令名Enable禁用该Button控件OnClientClick指定单击按钮时执行的客户端脚本PostBackUrl设置将表单传给某个页面TabIndex设置Button控件的Tab顺序Text标注Button控件UseSubmitBeha

13、vior使用JavaScript回传表单LinkButton控件LinkButton控件:跟Button控件一样,用于把表单数据回传给服务器端。但是,不像Button控件生成一个按钮,LinkButton控件生成一个链接。ImageButton控件ImageButton控件:与Button和LinkButton控件类似,用于把表单数据回传给服务器端,只是ImageButton控件总是显示图片。用于选择的列表控件列表控件可以同时显示很多数据项,以方便用户做相应的选择。例如,在淘宝网上搜索自己喜欢的东西时,用户可以在搜索之前先选择所属的类型。常用的列表控件包括DropDownList、CheckB

14、oxList、RadioButtonList控件。所有的列表控件都继承自ListControl基类。 DropDownList控件DropDownList控件使用户能够从一个单选下拉列表中选择一个数据项。通过设置该控件的高度和宽度(以像素为单位),可以规定控件的大小,但是不能控制该下拉列表显示的项目数。ListItem集合编辑器 CheckBoxList控件CheckBoxList控件是一个整体式的控件,组织一个可复选的列表项集合。其中,每个列表项由一个独立的CheckBox控件生成,子复选框的属性通过读取相关的数据源进行设置。任何一个列表控件都有一个Items属性,它包含子项目集合。Item

15、s属性通过ListItemCollection类实现,并使它所包含的每个项目可以通过ListItem对象进行访问。以下代码循环遍历了CheckBoxList控件中存储的项,并检查每个项的Selected属性。foreach(ListItem item in chkList.Items) if (item.Selected) / this item is selected RadioButtonList控件RadioButtonList控件充当一组单选按钮的父控件,每个子项通过一个RadioButton控件生成。根据设计规定,一个RadioButtonList控件只能有一项被选中或者一项都没被选

16、中。SelectedItem属性作为ListItem对象返回所选的项。需要注意,没有什么可以保证在任何时候只有一项被选中。因此,在访问RadioButtonList控件的SelectedItem时要特别小心,它可能为null。 if (radioButtons.SelectedValue != null) /执行语句 RadioButtonList控件支持与CheckBoxList控件相同的属性集,而且完全像它那样接受一些局部指令。HyperLink控件HyperLink控件相当于HTML代码中的标签,但是HyperLink控件又增加了许多属性。超链接控件可以通过传递指定的参数来访问不同的页面

17、。当触发了一个事件后,超链接的属性可以被改变。ImageUrl属性 ImageUrl属性主要用来设置HyperLink控件是以文本形式还是以图片形式显示,以下代码中HyperLink以图片的形式显示。 图片超链接 HyperLink控件NavigateUrl属性。 NavigateUrl属性用来设置超链接控件的链接Url地址,也就是即将跳转到的页面,以下代码实现了这个功能。 链接到我的空间 可以通过设置ImageUrl属性来为HyperLink控件指定图片。如果同时设置了Text和ImageUrl属性,那么ImageUrl属性优先。Table控件在ASP.NET 3.5中,还提供了用来进行页面

18、布局的表控件,不仅如此,表控件还提供了可编程功能。表中的行可以通过TableRow创建,而表中的列可通过TableCell来实现。TableCell集合编辑器窗口高级控件 AdRotator控件Calendar控件MultiView和View控件Image和ImageMap控件Wizard控件AdRotator控件AdRotator控件也叫做广告控件,其主要属性如下。ImageUrl:指定一个图片文件的相对路径或绝对路径,当没有ImageKey元素与OptionalImageUrl匹配时则显示该图片。NavigateUrl:包含目标Web 站点的URL。在beta版以前,这个元素叫做Targe

19、tUrl。OptionalImageUrl:指定一个图片文件的相对路径或绝对路径,对于ImageKey元素与OptionalImageUrl匹配时则显示该图片。OptionalNavigateUrl:指定特定页的 URL,当用户单击广告并且有NaivigateUrlKey元素与OptionalNavigateUrl元素匹配时,会将用户发送到该页面。AlternateText:该元素用来替代IMG中的ALT元素。KeyWord:指定广告的类别。Impression:该元素是一个数值,指示轮换时间表中该广告相对于文件中的其他广告的权重。Calendar控件日历控件不仅显示了一个日历,还可以让用户在

20、动态选取的同时,能够和数据库进行交互操作,实现复杂的数据绑定。从工具箱中拖动一个Calendar控件到页面中,其代码如下。MultiView控件和View控件MultiView控件可以作为一个或多个View控件的容器,在一个MultiView控件中,可以放置多个View控件(选项卡),当用户单击到该选项卡时,可以显示相应的内容。无论是MultiView还是View,都不会在HTML页面中呈现任何标记。而MultiView控件和View没有像其他控件那样多的属性,唯一需要指定的就是ActiveViewIndex属性。注意,View控件必须放置在MultiView控件当中,否则无法使用。Image

21、和ImageMap控件ImageMap控件是开发人员用来在图片上定义热点区域的,用户通过单击这些热点区域进行回发(PostBack)或定向(Navigate)操作。该控件一般用在需要对某张图片的局部范围进行互动操作的场合。ImageMap控件主要由两个部分组成,第一部分是图像,第二部分是作用点控件的集合,其主要属性有HotSpotMode、HotSpots。Image和ImageMap控件Image控件用来在Web窗体中显示图像,当图片无法显示时,图片将被替换成AlternateText属性中的文字,ImageAlign属性用来控制图片的对齐方式,而ImageUrl属性用来设置图像连接地址。I

22、mage控件可以通过编程来控制图像控件。Image控件常用属性列表属性说明Height和Width在页面上为图形保留空间。当呈现页面时,将根据保留的空间相应调整图像大小ImageAlign使用如Top、Bottom、Left、Middle和Right这样的值将图像与环绕文本对齐。在代码中,图像对齐是通过使用 ImageAlign 枚举来设置的AlternateText若不能加载图形,在显示时用文本来代替它。有些浏览器中,该文本还会显示为工具提示Wizard控件StartNavigationTemplate:指定为Wizard控件的Start步骤中的导航区域显示自定义内容。FinishNavigationTemplate:指定为Wizard控件的Finish步骤中的导航区域显示自定义内容。StepNavigationTemplate:指定为Wizard控件的Step步骤中的导航区域显示自定义内容。SideBarTemplate:该属性指定为Wizard控件的侧栏区域中自定义内容。

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

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁