您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 第九章ASPnet服务器控件
第九章服务器控件及数据库绑定29.1ASP.NET服务器控件概述ASP.NET提供了两大类型的控件:HTML控件:以HTML标记呈现的控件,此类控件不仅可以在客户端运行又可将其作为服务器控件运行;Web服务器控件:以“asp:”为前缀的控件,此类控件都运行在服务器端。3HTML控件HTML控件存在于【工具箱】的HTML选项卡下,它是基于HTML标记语言的,主要用于在客户端直接与用户交互。当需要在客户端动态地响应用户的鼠标单击、鼠标移动、键盘输入等交互性比较频繁的操作时,可以使用HTML控件。常用的HTML控件有:Input(Button)控件、Input(Text)控件以及Input(Radio)控件等。4若在.aspx文件的【设计】视图下将HTML控件拖放到设计页面,则在【源】视图中会自动生成代码。例如,向设计页面中拖放一个Input(Button)控件,则在【源】视图中会自动生成如下代码:inputid=Button1type=buttonvalue=button/5将HTML控件转换为HTML服务器控件默认情况下,服务器无法使用ASP.NET网页中的HTML元素,但可以通过将HTML元素转换为HTML服务器控件,将其转换为可在服务器上编程的对象。ASP.NET页中的大部分HTML元素都可以通过以下方式转换成HTML服务器控件:1.添加属性runat=server“在分析过程中,ASP.NET页框架将创建包含runat=“server”属性的所有元素的实例。2.在网页的【设计】视图下,用鼠标右键单击HTML控件,在弹出的快捷菜单中选择【作为服务器控件运行】,该HTML控件会自动变为HTML服务器控件。6HTML服务器控件与Web服务器控件的区别:HTML服务器控件没有asp标记前缀。从外观上看,设计页面中控件左上方的绿色三角形表示该控件为服务器控件。7分类HTML控件HTML标记表单控件HtmlFormForm输入控件HtmlInputHiddenHtmlInputText(password)HtmlInputText(text)Inputtype=“hidden”Inputtype=“password”Inputtype=“text”选择控件HtmlInputCheckBoxHtmlSelectHtmlInputRadioButtonInputtype=“checkBox”selectinputtype=“radio”表格控件HtmlTableHtmlTableRowHtmlTableCelltabletrtdHTML控件与标准HTML标记的对应关系表89.2Web服务器控件基本Web服务器控件:按钮控件(Button控件、LinkButton控件和ImageButton控件)TextBox控件CheckBox控件和CheckBoxList控件RadioButton控件和RadioButtonList控件ListBox控件和DropDownList控件。验证控件:9按钮控件VS2005中有以下3种类型的Web服务器按钮控件:(1)Button控件(2)LinkButton控件(3)ImageButton控件3种类型的按钮在鼠标单击时都可以将页面提交给服务器,并触发服务器端对应的Click事件,然后在服务器端执行相应的事件代码。10Button控件的语法格式:asp:Buttonid=“ButtonID”runat=“Server”Text=“Button上面的文本”OnClick=“事件处理程序名称”/asp:ButtonImageButton控件允许将一个图形指定为按钮,这个控件具有Image的界面和Button的功能。语法如下:asp:ImageButtonid=“ImageButton1”runat=“Server”ImageUrl=“”OnClick=“ImageButton1_Click”LinkButton控件,它只是使按钮的界面呈现为超级链接状,并非真正的超级链接。语法如下:asp:LinksButtonid=“LinksButton1”runat=“Server”LinkButton/asp:LinkButton”11TextBox控件TextBox控件:用于让用户输入文本内容。TextBox控件常用属性和事件:ID属性指定控件的名称,它是控件在页面中的唯一标识。AutoPostBack属性决定控件中文本内容修改后,是否自动回发到服务器。默认为false,即修改文本后并不立即回发到服务器,而是等页面被提交后一并处理。若为true,则每次更改文本框的内容并且焦点离开控件时,都会自动回发,使服务器处理控件相应的TextChanged事件。12TextMode属性设置文本框接受文本的行为模式。有3种属性值:MultiLine(多行输入模式)、Password(密码输入模式)、SingleLine(默认值,单行输入模式)。Text属性设置控件上所要显示的文本。TextChanged事件文本框中的内容发生更改且页面回传到服务器端处理时,触发的事件。若AutoPostBack属性设置为true,则每次更改文本框中的内容都会使页面回传到服务器端,并同时触发TextChanged事件。13语法如下:asp:TextBoxid=“对象名称”runat=“server”TextMode=“文字显示模式”Text=“要在文本框中显示的字符串”MaxLength=“可输入字符串的最大字数”Rows=“可显示的最大行数”Columns=“可显示的最大列数”Warp=“是否自动换行”AutoPostBack=“是否马上回传到服务器”OnTextChanged=“事件处理程序”/14CheckBox控件与CheckBoxList控件CheckBox控件用于向用户提供选项,适用于选项不多且比较固定的情况。Checked属性、Text属性CheckBoxList控件用于向用户提供选项列表,适用于选项较多或在运行时动态地决定有哪些选项时。Items属性.Items[0].Select属性:是否选中.Items[0].Text属性:该项的显示文本例:\其它\CheckBox.aspx15protectedvoidButton1_Click(objectsender,EventArgse){Label1.Text=;if(CheckBox1.Checked==true)Label1.Text=CheckBox1.Text;if(CheckBox2.Checked==true)Label1.Text=Label1.Text+CheckBox2.Text;/////////////////////Label2.Text=;if(CheckBoxList1.Items[0].Selected)Label2.Text=CheckBoxList1.Items[0].Text;if(CheckBoxList1.Items[1].Selected)Label2.Text=Label2.Text+CheckBoxList1.Items[1].Text;}例:\其它\CheckBox.aspxCheckBoxList16RadioButton控件与RadioButtonList控件RadioButton控件:GroupName属性:定义单选按钮组名,具有相同组名的单选按钮可以作为一组互斥的控件来使用。RadioButtonList控件:封装了一组单选按钮控件的列表控件Items属性。若要使SelectedIndexChanged事件起作用,必须将AutoPostBack属性置为True17protectedvoidRadioButtonList1_SelectedIndexChanged(objectsender,EventArgse){if(RadioButtonList1.Items[0].Selected)Label2.Text=RadioButtonList1.Items[0].Text;if(RadioButtonList1.Items[1].Selected)Label2.Text=RadioButtonList1.Items[1].Text;if(RadioButtonList1.Items[2].Selected)Label2.Text=RadioButtonList1.Items[2].Text;}例:\其它\RadioButton.aspxRadioButtonList18ListBox控件和DropDownList控件ListBox控件(列表框控件)用来显示一组条目,用户可从中选择一条或多条。常用的属性Items属性:用于编辑控件中所要显示的列表项。SelectionMode属性:用于指定ListBox控件的模式行为。Single表示每次选择一个条目,Multiple表示每次可以选择多个条目。常用事件SelectedIndexChanged事件,当选定项发生更改时触发该事件。19DropDownList控件为用户提供一些选项的控件,只能选择一项。常用属性AutoPostBack属性和Items属性常用事件SelectedIndexChanged事件。20通过属性窗口静态绑定数据。演示通过程序动态绑定数据动态绑定数据主要有两种方法:如果想动态改变控件的所有选项,可以直接重新绑定数据,如果只是增加或者删除某个选项,则可以利用ListItem属性。利用DataBind()方法实现数据绑定。21DropDownList的数据绑定1.在页面上加两个DropDownList控件2.右键“资源管理器”中的App_Data文件夹,选择“添加现有项”选择数据库。3.单击DropDownList1右上角的三角,“选择数据源”,设置数据库。4.下一步,选择“列”,测试。5.在page_Load方法中,输入如下代码:if(!Page.IsPostBack){ArrayListvalues=newArrayList();values.Add(好);values.Add(一般);values.Add(不好);DropDownList2.DataSource=values;DropDownList2.DataBind();}}229.3验证控件控件名功能描叙RequiredFieldValidator(必须字段验证)用于检查是否有输入值CompareValidator(比较验证)按设定比较两个输入RangeValidator(范围验证)输入是否在指定范围RegularExpressionValidator(正则表达式验证)正则表达式验证控件CustomValidator(自定义验证)自定义验证控件ValidationSummary(验证总结)总结验证结果231.必须字段验证控件RequiredFieldValidator验证控件是否有值,常用属性:ControlToValidate:要验证的控件名ErrorMessage:出错时在Summary中显示的错误信息Text:出错时显示的信息,若为空,出错时显示ErrorMessageDisplay:错误信息的显示方式,Static:如果没出现也占位置Dynatic:出错时才占页面位置None:出错时不显示24案例名称:验证控件程序名称:3-19.aspxasp:RequiredFieldValidatorID=“RequiredFieldValidator1”runat=“server”ErrorMessage=“姓名必须输入ControlToValidate=TextBox1/asp:RequiredFieldValidator在文本框中不输入信息,按回车键会提示信息验证控件目录252.比较验证控件CompareValidator控件,比较两个控件的值是否符合程序设定,常用属性:ControlToVa
本文标题:第九章ASPnet服务器控件
链接地址:https://www.777doc.com/doc-1600137 .html