教学与管理平台.ppt

上传人:小飞机 文档编号:6287635 上传时间:2023-10-14 格式:PPT 页数:256 大小:1.18MB
返回 下载 相关 举报
教学与管理平台.ppt_第1页
第1页 / 共256页
教学与管理平台.ppt_第2页
第2页 / 共256页
教学与管理平台.ppt_第3页
第3页 / 共256页
教学与管理平台.ppt_第4页
第4页 / 共256页
教学与管理平台.ppt_第5页
第5页 / 共256页
点击查看更多>>
资源描述

《教学与管理平台.ppt》由会员分享,可在线阅读,更多相关《教学与管理平台.ppt(256页珍藏版)》请在三一办公上搜索。

1、ASP.NET技术及应用,本章主要介绍ASP.NET技术的相关知识:(1)了解ASP.NET相关概念;(2)掌握配置ASP.NET运行环境的方法;(3)熟练使用ASP.NET服务器控件;(4)掌握ASP.NET内置对象的使用方法;,ASP.NET是.NET技术框架下的一个核心组成部分。.NET就是Microsoft的XML Web服务平台。.NET的最终目标就是让用户在任何地方、任何时间以及使用任何设备都可以访问所需的信息、文件和程序。用户不需要知道这些信息、文件和程序存放在何地,只需要简单地发出请求并接收执行结果,其中的复杂计算和操作都由.NET平台控制并隐蔽起来。,1.1 ASP.NET概

2、述,一、.NET框架Microsoft推出的.NET平台不同于以往的编程语言,它架设了一个开发VB.NET、C#、ASP.NET等应用程序的总框架。在.NET框架中主要包括三部分。1通用语言运行环境(Common Language Runtime,CLR)公共语言运行环境(CLR)是.NET框架的运行环境,负责运行和维护用户编写的程序代码。2基础类库(Base Class Library).NET框架为开发人员提供了一个统一、面向对象、层次化、可扩展的类库集(API)。,1.1 ASP.NET概述,3ASP.NET,Windows Forms等应用环境ASP.NET、Windows Forms

3、都是.NET框架中顶层应用,在ASP.NET中支持VB.NET、C#、Jscript等程序语言类库。,1.1 ASP.NET概述,二、ASP.NET简介 ASP.NET是ASP的升级版,它重新改造了ASP,并融入Microsoft.NET框架之中。用户可以使用.NET平台支持的程序语言(如VB.NET、C#等)来开发ASP.NET程序。在应用程序的开发中,ASP.NET提供了一系列控件,用来构建类似图形用户界面的Web程序。ASP.NET的开发环境有两个特点:,1.1 ASP.NET概述,(1)拥有与Winodows环境相似的Web控件,如Button、Label等。这些控件都有各自的属性、方

4、法和事件,可以利用程序码来设定这些控件的属性。在Web运行环境中,.NET平台会自动处理这些控件的所有细节,.NET平台会先处理控件在画面(Web Form)上产生的HTML标签,然后再把处理结果发送到浏览器中。(2)与传统的开发方式相比,ASP.NET可以采用事件驱动或用户图形接口(GUI)的方式进行开发。NET平台将内建控件与现有的网页技术(如JavaScript)结合起来,拓宽了Web应用范围和能力。,1.1 ASP.NET概述,三、ASP.NET运行环境要正确运行ASP.NET,需要在计算机上安装如下软件:(1)IIS 5.x(Internet信息服务管理器5.0)或更高版本。(2).

5、NET Framework2(.NET框架)。如果安装了Microsoft Visual Studio 2005,包括上面两个组件的所有服务器环境都由系统自动配置。,1.2 服务器控件,在HTML页面上包括了两个基本内容:网页元素(俗称网页标签)和超连接,网页元素是网页结构和交互的重要对象。在ASP.NET中,服务器控件就是在服务器端执行的控件。具体来说,就是服务器控件被执行时,首先在服务器端被编译,然后将编译得到的HTML代码一次性发送到客户端浏览器中,展现在浏览器中的是HTML各种标签。ASP.NET服务器控件可以分为两大类:HTML服务器控件和Web服务器控件。,1.2 服务器控件,1H

6、TML服务器控件HTML服务器控件实际上就是HTML网页元素的可编程版本,基本上与HTML元素保持着对应关系,这些网页元素包含了很多能够在服务器上显示并可被调用的公共属性。将普通的HTML元素转换为HTML服务器控件方法比较简单,可以通过两步实现转换:(1)在普通HTML元素中添加Runat=Server属性,表示该元素在服务器端执行。(2)设置ID属性,标识服务器控件的身份,方便编程引用。,1.2 服务器控件,例如,HTML网页元素语法:转换为服务器控件语法为:转换之后普通HTML网页元素的相关属性、事件和方法等将全部映射到HTML服务器控件中,通过编程就可在页面处理过程中引用并控制该HTM

7、L服务器控件了。,1.2 服务器控件,2Web服务器控件Web服务器控件是.NET针对Web编程开发的另一套全新解决方案,它具有更强大的功能,完全与编程进行融合。该控件组并不一一对应HTML元素,而且属性与HTML元素的属性也不尽相同。Web服务器控件包括传统意义上的表单控件(如按钮、文本框、单选按钮、复选框、下拉列表框等)和数据表等复杂控件,还包括提供在网格中显示数据、选择日期等常用窗体功能的控件。此外,用户还可以定义自己的控件。,1.2 服务器控件,在设计时,显示在页面上的Web服务器控件的格式如下:其中asp:前缀表示该控件为Web服务器控件,attributes表示Web服务器控件的各

8、种属性,这些属性不与HTML元素的属性相对应,使用时不要混淆。运行Web窗体页面时,Web服务器控件使用适当的HTML元素呈现在页上,不但取决于浏览器类型,而且与对控件进行的设置有关。,1.2 服务器控件,由于HTML网页元素、HTML服务器控件和Web服务器控件的功能大部分是重合的,可以按照下述原则来选择使用网页元素还是控件:(1)如果仅显示或处理静态内容,使用传统的HTML网页元素即可。(2)当需要将ASP程序转换为ASP.NET程序时,可以使用HTML服务器控件。(3)如果新建ASP.NET程序,建议使用Web服务器控件。,1.2 服务器控件,一、HTML服务器控件HTML服务器控件本质

9、上是由System.Web.UI.HtmlControls类继承而来的,整个控件组在System.Object类中的位置关系如右图所示。,1.2 服务器控件,HTML服务器控件和普通的HTML网页元素在显示和使用上基本一致。它们之间也存在直接的对应关系,其对应关系如下表所示。,1.2 服务器控件,1HtmlAnchor控件HtmlAnchor控件对应HTML语言中的标签,用于定义超链接。示例2HtmIImage控件Htmllmage控件对应HTML的标签,用于在页面中插入图像,其语法格式如下:HtmIImage控件分别指定了图像的文件的地址、宽、高等属性。,1.2 服务器控件,3HtmlFor

10、m控件HtmlForm控件是一个容器控件,用来放置其他表单控件,对应HTML语言中的标签,其语法如下:.如果要在页面内添加向服务器提交的表单,就必须使用HtmlForm控件。,1.2 服务器控件,4HtmIInputext控件HtmlInputext控件是一个文本或密码输入控件,对应HTML语言中的和标签,其语法如下:在HtmlInputext控件中使用type=text,表示文本输入框;使用type=password,表示密码输入框。Maxlength属性表示文本框最大输入字符数,size表示文本框显示字符宽度,Value属性表示在文本框中的显示文字,用于事先设置默认显示信息。,1.2 服务

11、器控件,5HtmlTextArea控件HtmlTextArea控件可以用来输入多行文本,对应HTML语言中的标签,其语法如下:在HtmlInputext控件中,cols和rows分别表示列数和行数,单位为字符。,1.2 服务器控件,6HtmlInputHidden控件HtmlInputHidden控件是一个隐藏控件,对应HTML语言中的标签。该控件在页面中不显示,主要用于参数信息传递。其语法如下:在HtmlInputHidden控件中,可以传递的值都放置在value属性中。,1.2 服务器控件,7HtmlInputRadioButton控件HtmlInputRadioButton控件是一个单选

12、按钮控件,对应HTML语言中的标签,在页面中显示为一个单选按钮,其语法如下:在HtmlInputRadioButton控件中,value表示单选按钮要传递的值。一般常把多个单选按钮放置在一起编成一组,需要设置相同的name属性。checked=checked属性表示单选按钮为可选状态。,1.2 服务器控件,8HtmlInputCheckBox控件HtmlInputCheckBox控件是一个复选框控件,对应HTML语言中的标签,在页面中显示为一个复选框按钮,其语法如下:在HtmlInputCheckBox控件中,value表示复选框要传递的值。一般可以把多个复选框放置在一起,组成一个多项选择组。

13、checked=checked属性表示复选框为可选状态。,1.2 服务器控件,9HtmlInputButton控件HtmlInputButton控件是一个按钮控件,对应HTML语言中的和标签。在页面中显示为一个按钮,一般用来提交表单。其语法如下:在HtmlInputButton控件中,type属性可以指定按钮的不同功能;当type属性值为button时,表示一个普通按钮。value表示按钮在页面中显示的文字。按钮的事件属性为onserverclick=,表示单击按钮将触发事件。,1.2 服务器控件,10HtmlSelect控件HtmlSelect控件是一个下拉列表控件,对应HTML语言中的标签

14、,在页面中显示为一个下拉列表框或下拉菜单,其语法如下:选项1 选项2,1.2 服务器控件,在HtmlSelect控件中,size属性设置下拉列表框显示为列表框或者下拉菜单,当size属性值为1时显示为下拉菜单,而当size属性值大于1时显示为列表框。表示一个下拉列表框的一个选项,选项要传递的值通过value属性设置。要获取下拉列表框中选取了哪个选项,可以通过selectName.value来实现。通过为选项添加selected=“selected”属性,可以设置该选项在默认状态下被选取状态。示例,1.2 服务器控件,11HtmlInputFile控件HtmlInputFile控件是一个文件上传

15、控件,对应HTML的标签。其语法如下:HtmlInputFile控件中有几个属性和方法非常重要,它们是HtmllnputFile控件的子类PostedFile的属性或方法:ContentLength获取上载文件的大小;ContentType获取上载文件的类型;FileName获取客户端的路径;SaveAs():将上传文件保存在服务器端指定文件夹中。示例,1.2 服务器控件,示例HtmlAnchor控件使用:Sub Page_Load(ByVal sender As Object,ByVal e As EventArgs)dns.InnerText=天津师范大学 dns.HRef=http:/d

16、ns.Target=_blank End Sub HtmlAnchor控件使用,1.2 服务器控件,表单控件综合应用 Sub Test(ByVal Sender As Object,ByVal E As EventArgs)Dim strMessage As String strMessage=你设置的详细信息如下:获取文本框的值 strMessage=strMessage&用户名&name.Value strMessage=strMessage&密码&password.Value 获取单选按钮组的值 If browser1.Checked Then strMessage=strMessage

17、&浏览器&browser1.Value ElseIf browser2.Checked Then strMessage=strMessage&浏览器&browser2.Value End If 获取复选框的值 If tool1.Checked Then strMessage=strMessage&服务器1&tool1.Value End If If tool2.Checked Then strMessage=strMessage&服务器2&tool2.Value End If If tool3.Checked Then strMessage=strMessage&服务器3&tool3.Valu

18、e End If If tool4.Checked Then strMessage=strMessage&服务器4&tool4.Value End If 获取列表框的值 strMessage=strMessage&使用语言&language.Value 获取多行文本框的值 strMessage=strMessage&说明&intro.Value 显示结果 message.InnerHtml=strMessage End Sub,表单控件综合使用 用户环境设置 用户名:密码:浏览器:IE FF 服务器:ASP JSP PSP ASP.NET 语言:VBScript JavaScript VB.N

19、ET C#Java J#说明:,1.2 服务器控件,文件上传控件使用 Sub Enter(ByVal Sender As Object,ByVal E As EventArgs)Dim name,paths As String name=path.GetFileName(upfile.PostedFile.FileName)paths=d:&name upfile.PostedFile.SaveAs(paths)message.InnerHtml=上传文件的详细信息如下:message.InnerHtml=message.InnerHtml&保存地址:&paths message.InnerH

20、tml=message.InnerHtml&文件名称:&name message.InnerHtml=message.InnerHtml&文件大小:&upfile.PostedFile.ContentLength&字节 message.InnerHtml=message.InnerHtml&文件类型:&upfile.PostedFile.ContentType message.InnerHtml=message.InnerHtml&原文件地址:End Sub 文件上传控件的使用 选择上传的文件:,1.2 服务器控件,二、Web服务器控件Web服务器控件是NET全力打造的新控件组,这套控件表现为

21、功能更强大、设计更合理、使用更方便,几乎涵盖了HTML服务器控件的所有功能。Web服务器控件是由类继承而来。由于所有Web服务器控件都是从WebControls类继承而来,因此它们有很多相同的属性和方法。,1.2 服务器控件,1.2 服务器控件,1Image控件Image控件是一个图像控件,用于在Web页面上显示图像。其中ImageUrl属性用于设置图像文件的地址。示例Web服务器控件的属性与标准HTML元素属性和HTML服务器控件属性差异很大,如ImageUrl属性,HTML语法为src;ImageAlign属性,HTML语法为align。在ImageUrl=/logo.gif属性中,“/”

22、表示站点根目录。,1.2 服务器控件,2HyperLink控件HyperLink控件是一个超链接控件,用于在Web页面上定义超级链接。其中NavigateUrl属性用于设置超链接的地址。示例在Web服务器控件中对HTML超链接标签进行了更改,还可以在HyperLink控件中嵌入图片,这在HTML语法中是需要两个元素配合才能完成的,把上面代码用HTML语法书写则为:,1.2 服务器控件,3Label控件Label控件是一个标签控件,用于在Web页面上显示提示信息。示例在Label控件中主要有一个Text属性,该属性用来显示静态信息,也可以编程控制该属性的值。4Literal控件Literal控件

23、是一个文本控件,用于在Web页面上显示静态文本。其语法如下:Literal控件中Text属性用来设置在页面上显示的静态文本。,1.2 服务器控件,5Table控件Table控件是一个表格控件,用于在Web页面上创建表格,功能与HTML语言中的标签类似。与Table控件相关的控件有TableRow控件和TableCell控件,其中TableRow控件用于创建表格行,TableCell控件用于创建单元格。示例 Table控件与HTML语言中的标签使用方法相同,需要配合TableRow控件和TableCell控件共同构建表格结构。Table控件的属性非常多,与HTML的标签属性非常相似。,1.2 服

24、务器控件,6Panel控件Panel控件是一个容器控件,用于在Web页面上将一组控件作为一个整体进行统一管理,相当于HTML语言中的元素。通过设置Panel控件的Visible属性可以隐藏或显示Panel控件内所有控件。示例 利用Panel控件可以很方便地管理一组控件,并进行外观控制,如背景、边框、对齐、显示隐藏或失效激活等。,1.2 服务器控件,7PlaceHolder控件PlaceHolder控件也是一个容器控件,用于在Web页面上预留一个位置,以便在运行时,动态放置其他控件,相当于一个集合。示例 程序中通过编程动态为PlaceHolder控件添加两个控件,个是文本控件,另一个是按钮控件。

25、使用PlaceHolder控件时,应先声明控件变量,再用Controls子类中的Add方法把新控件添加到PlaceHolder控件实例中。,1.2 服务器控件,8TextBox控件TextBox控件是一个文本框控件,可用来输入单行文本、密码和多行文本。默认情况下为单行文本,设置TextMode属性为Multiline,则表示多行文本框,设置TextMode属性为Password,则表示密码框。通过设置Text属性可以显示默认文本,MaxLength属性可以确定输入最大字符数,Rows和Columns属性可以设置多行文本框的行数和列数,Wrap属性表示是否换行。,1.2 服务器控件,AutoPo

26、stBack属性和OnTextChanged事件属性可以使文本框内容改变时自动触发事件并回传数据到服务器。在HTML语言中,一般将表单上传给服务器,需要使用提交按钮。在Web服务器控件中,只需要设置AutoPostBack属性就可以即时回传表单,不需要单独设置提交按钮,但需要和OnTextChanged事件属性配合使用。示例 在文本框中输入文字后,由于设置了AutoPostBack属性为true,所以会立即触发TextChanged事件,并调用Enter过程,把数据回传给服务器进行处理。,1.2 服务器控件,9RadioButton控件RadioButton控件是一个单选框控件,在Web网页上

27、显示为一个单选按钮。其语法如下:如果需要将多个单选按钮组合在一起,就必须将这些按钮的GroupName设置相同。当单击单选按钮时,将触发CheckedChanged事件。,1.2 服务器控件,10RadioButtonList控件RadioButtonList控件是一个单选列表框控件,在Web网页上显示为一组单选按钮。RadioButtonList控件相当于把多个RadioButton控件绑定在一起。其语法如下:选项1 选项2,1.2 服务器控件,OnSelectedIndexChanged事件属性表示改变按钮选择时要触发的事件,RepeatColumns属性表示显示的列数,RepeatDir

28、ection属性表示排列的方向,RepeatLayout属性表示排列布局方式。每一个ListItem就表示一个单选框,Value属性表示传递值(可以省略)。如果设置Selected为True,则表示该选项默认状态下被选中。可以使用来获取被选中的选项值,使用radiobuttonlistName.SelectedItem.Text来获取被选中的选项文字。,1.2 服务器控件,11CheckBox控件CheckBox控件是一个复选框控件,在Web网页上显示为一个复选框。其语法如下:在CheckBox控件中,用Checked属性可以判断该复选框是否被选中。当单击复选框时,将触发CheckedChan

29、ged事件。在默认状态下,CheckedChanged事件并不会立即回传数据到服务器,当AutoPostBack属性设置为true时,则会立即把数据回传到服务器进行处理。,1.2 服务器控件,12CheckBoxList控件CheckBoxList控件是一个复选列表框控件,在Web网页上显示为一组复选框。这组复选框可以显示为一个,也可以显示为多个。其语法如下:选项1 选项2,1.2 服务器控件,OnSelectedIndexChanged事件属性表示改变复选列表框选择时将触发SelectedIndexChanged事件,RepeatColumns属性表示要显示的列数,RepeatDirecti

30、on属性表示排列方向,RepeatLayout属性表示排列布局方式。每一个ListItem表示一个复选框,Value属性表示要传递的值(可以省略)。如果设置Selected为True,则表示该选项在默认状态下被选中。示例,1.2 服务器控件,13DropDownList控件DropDownList控件是一个下拉列表框控件,在Web网页上显示为一个下拉菜单列表框。其语法如下:选项文字 选项文字.在使用DropDownList控件时,当选择下拉列表框中一项时,将触发SelectedIndexChanged事件。使用SelectedIndex属性获取所选项的索引。可以使用来获取被选中的选项值,使用d

31、ropdownlistName.SelectedItem.Text来获取被选中的选项文字。,1.2 服务器控件,14ListBox控件ListBox控件是一个列表框控件,在Web网页上显示为一个列表框。可以创建单选和多选两种样式的列表框。其语法如下:选项文字 选项文字.,1.2 服务器控件,在使用ListBox控件时,当改变列表框的选择时,将触发SelectedIndexChanged事件。通过SelectionMode可以设置列表框是多选还是单选(默认为单选),Rows属性表示要显示的行数。使用SelectedIndex属性获取所选项的索引。可以使用Items属性访问列表框中的所有列表项。当

32、列表框设置为多选时,需要用循环语句进行逐项判断。,1.2 服务器控件,15Button控件Button控件是一个普通按钮控件,在Web网页上显示为一个按钮,用来提交Web表单。语法如下:Text属性用来设置按钮上显示的文字。16LinkButton控件LinkButton控件是一个链接按钮控件,在Web网页上显示为一个具有超链接样式的按钮。语法如下:Text属性用来设置链接按钮上显示的文字。,1.2 服务器控件,17AdRotator控件AdRotator控件是一个广告条控件,在Web网页上显示为一个带有超链接的广告条样式的图像。使用AdRotator控件,需要与一个xml格式的信息文件配合使

33、用。18Calendar控件Calendar控件是一个日历控件,在Web网页上显示为一个月历表。示例Calendar控件有很多属性和子控件。其中TitleStyle子控件用来设置标题栏样式,TodayStyle子控件用来设置当前日期的样式。,1.2 服务器控件,使用Image控件 使用Image控件,1.2 服务器控件,使用HyperLink控件 使用HyperLink控件,1.2 服务器控件,使用Label控件 使用Label控件 类似的控件:,1.2 服务器控件,使用Table控件 使用Table控件 标题一 标题二 标题三 第二行第1列 第二行第2列 第二行第3列 第三行第1列 第三行第

34、2列 第三行第3列,1.2 服务器控件,使用Panel控件 使用Panel控件,1.2 服务器控件,使用PlaceHolder控件Sub Page_Load(ByVal sender As Object,ByVal e As EventArgs)Dim ltl As Literal=New Literal ltl.Text=文本控件 phd.Controls.Add(ltl)Dim btn As Button=New Button btn.Text=按钮控件 phd.Controls.Add(btn)End Sub 使用PlaceHolder控件,1.2 服务器控件,使用TextBox控件Su

35、b Enter(ByVal sender As Object,ByVal e As EventArgs)label1.Text=哈、哈,&name.Text&,我认识你。End Sub 使用TextBox控件,1.2 服务器控件,使用RadioButtonList控件和CheckBoxList控件 Sub Enter1(ByVal sender As Object,ByVal e As EventArgs)label1.Text=radiobuttonlist1.SelectedItem.Text End If Next label2.Text=str End Sub 使用PlaceHolde

36、r控件 第一 第二 第三 英语 汉语 法语,1.2 服务器控件,使用Calendar控件 使用Calendar控件,1.2 服务器控件,三、验证控件验证控件是一组特殊的Web服务器控件。利用验证控件可以对用户输入的信息进行各种验证,如是否为空、输入值是否准确、输入的有效范围和是否符合要求等。ASP.NET共提供了6种验证控件。,1.2 服务器控件,1RequiredFieldValidator控件RequiredFieldValidator控件用来验证用户在指定控件中是否输入了值,确保必填表单为非空。每个RequiredFieldValidator控件可以验证一个其他控件,确保用户在该控件中输

37、入了内容。其中ControlToValidate属性用来指定要验证的控件名,ErrorMessage属性表示当验证不合法时要显示的错误信息,Display属性设置错误信息显示方式。示例,1.2 服务器控件,2CompareValidator控件CompareValidator控件用来比较两个控件的值是否符合指定的程序设置。ControlToValidate属性指定被比较的控件名,ControlToCompare属性指定比较的控件名,Type属性指定比较数据的类型(包括String、Integer、Double、Date和Currency),Operator属性指定比较操作符(默认为相等比较)。

38、CompareValidator控件可以比较两个输入文本框值,也可以与一个给定的值进行比较,如标签控件等设置有固定值的控件。示例,1.2 服务器控件,3Rangevalidator控件RangeValidator控件用来验证用户在表单控件中输入的值是否在指定的范围内。ControlToValidate属性指定需要验证的控件名,Type属性指定数据的类型(包括String、Integer、Double、Date和Currency),MinimumValue属性指定最小值,MaximumValue属性指定最大值。当输入的值超出了指定范围,则会显示错误信息。示例,1.2 服务器控件,4Regular

39、ExpressionValidator控件RegularExpressionValidator控件能够根据设定的正则表达式验证指定控件输入的值是否合法。该控件是一个功能强大的控件,使用范围广泛,常用来验证电话号码、邮政编码、网址、邮件地址、身份证号等具有一定格式的信息等。ValidationExpression属性用来设置正则表达式。该控件属性比较简单,使用的难点是正则表达式的编写。示例,1.2 服务器控件,5ValidationSummary控件ValidationSummary控件本身不具有验证功能,但具有收集本页所有验证控件的错误信息的功能,并将错误信息组织起来进行集中显示。其中Head

40、erText表示头信息,相当于错误信息显示标题,DisplayMode属性设置错误信息的显示方式,ShowSummary属性表示是否显示错误信息。使用ValidationSummary控件时可把其他验证控件的Display属性设置为None,然后集中显示所有错误信息。示例,1.2 服务器控件,使用RequiredFieldValidator控件 使用RequiredFieldValidator控件 姓名:,1.2 服务器控件,使用CompareValidator控件 使用CompareValidator控件 输入密码:重新输入:,1.2 服务器控件,使用Rangevalidator控件 使用R

41、angeValidator控件 请输入0到9之间的数字:,1.2 服务器控件,使用RegularExpressionValidator控件 使用RegularExpressionValidator控件 请输入E-mail:,1.2 服务器控件,使用ValidationSummary控件 使用ValidationSummary控件 请输入0到9之间的数字:请输入E-mail:,1.2 服务器控件,四、其他控件问题1用户控件除了使用ASP.NET内置控件外,用户还可以定义自己的控件,这称为用户控件,也称为pagelets。用户控件的编写方法与普通的Web表单文件(.aspx)类似,只需要把文件另存

42、为.ascx格式的文件即可。用户控件的编写方法与普通的ASP.NET页面一样,唯一不同的是用户控件不能包含、和标签元素。示例,1.2 服务器控件,将一个已经开发好的Web表单文件(.aspx转换为用户控件,只需要删除除页面中的、和标签即可。将WebForm中的page替换为Control,将文件扩展名改为.ascx就可以了。定义完用户控件,就可以在表单页面中注册引用了。示例,1.2 服务器控件,在编写注册控件时,需要使用Register指示符指定用户控件的命名空间和名称,其中包含3个属性:(1)TagPrefix:指定标签前缀,定义控件的命名空间;(2)TagName:指定标签名称,指向所使用

43、的控件名字;(3)Src:指定用户控件的源文件,可以使用相对路径和绝对路径。在定义用户控件时,也可以在控件中添加控制代码。示例,1.2 服务器控件,在定义有控制代码的用户控件时,应指明控件的命名空间,即添加语句。2数据绑定在使用Web服务器控件时,可以把动态数据绑定到控件上,这样就能够实现控件动态显示。在绑定数据时,需要为控件的DataSource属性指定数据源,然后调用控件的DataBind方法执行绑定。示例,1.2 服务器控件,在绑定数据时,需要调用DataBind()方法,ASP.NET页面自身不会执行绑定操作。不过Page对象也有一个DataBind()方法,调用Page对象的Data

44、Bind()方法时,ASP.NET页面会自动调用页面中每个控件的DataBind()方法。也可以在控件中使用下面语法绑定数据:其中,#命令表示数据绑定操作。,1.2 服务器控件,用户自定义的控件(sample.ascx)姓名:性别:简历:,1.2 服务器控件,用户控件注册到页面中并引用:注册调用用户控件,1.2 服务器控件,带有控制代码的用户控件(sample.ascx)Sub Enter(ByVal Sender As Object,ByVal e As EventArgs)Dim strMessage As String strMessage=你输入的信息:strMessage=strMe

45、ssage,1.2 服务器控件,控件数据绑定 Sub Page_Load(ByVal Sender As Object,ByVal E As EventArgs)Dim server()As String=ASP,ASP.NET,PHP,JSP myserver.DataSource=Server myserver.DataBind()End Sub 控件数据绑定,1.3 ASP.NET内置对象,ASP.NET是完全面向对象的编程环境,通过.NET提供的类库可以实现所有的功能。一个ASE.NET文件可以包含一系列类,这些实例化的类即包括有界面的控件,也包括无界面的对象。控件和对象都是各种类的具

46、体应用实例。其中控件在前面已经介绍过,与内置控件一样,ASP.NET内置了很多对象,这些对象提供了丰富的功能。每个对象有各自的字段(field)、属性(property)、方法(method)、集合(collection)或事件(event)。,1.3 ASP.NET内置对象,ASP.NET是完全面向对象的编程环境,通过.NET提供的类库可以实现所有的功能。一个ASE.NET文件可以包含一系列类,这些实例化的类即包括有界面的控件,也包括无界面的对象。控件和对象都是各种类的具体应用实例。其中控件在前面已经介绍过,与内置控件一样,ASP.NET内置了很多对象,这些对象提供了丰富的功能。每个对象有各

47、自的字段(field)、属性(property)、方法(method)、集合(collection)或事件(event)。,1.3 ASP.NET内置对象,“字段”(field)或“属性”(property)是用来描述对象的特质的,例如Response是ASP.net内置的一种对象,而它有一个属性IsClientConnected可以用来描述客户端是否仍和服务器端连接中。“方法”(method)是用来执行对象的动作,例如Response有一个名称为Write()的方法。“事件”(event)是在某些情况下发生特定的信号通告,例如Session是ASP.net内置的一种对象,而它在用户启动或结束

48、浏览器的时候会分别产生OnStart和OnEnd事件。“集合”(collection)指的是一组放在一起的“值”(value),例如QueryString是Request对象的集合。,1.3 ASP.NET内置对象,1.3 ASP.NET内置对象,一、Page对象在浏览器打开Web Form网页时,ASP.net会先编译Web Form网页,分析网页及其代码,然后以动态的方式产生新的类(class)并编译它们。Web Form网页编译后所创建的类(class)是从ASP.net的Page类派生而来,Web Form网页可以使用Page类的属性、方法与事件。,1.3 ASP.NET内置对象,每次

49、请求Web Form网页,新派生的Page类会变成一个能够在服务器执行的可执行文件。在运行阶段(runtime)时,Page类会以动态方式创建HTML标记并返回浏览器,同时处理收到的请求(request)和响应(response),若网页中包含服务器控件,Page类便可做为服务器控件的容器,而且会在运行阶段创建服务器控件,此时的Web From网页是一个Page对象,其属性、方法与事件均来自Page类。Page对象的属性、方法和事件的说明表,1.3 ASP.NET内置对象,1.3 ASP.NET内置对象,ASP.net是事件导向的应用程序,Web Form网页执行时会先进行网页初始化,此时会触

50、发Page对象的Init事件,然后加载网页并触发Page对象的Load事件;接下来Web Form网页会触发服务器控件事件(如果有指定的话),最后在网页完成处理且信息被写入客户端后会触发Page对象的Unload事件,如果在网页执行流程中发生未处理的异常情况,则会触发Page对象的Error事件。流程图,1.3 ASP.NET内置对象,1.3 ASP.NET内置对象,Init事件和Load事件主要的差别在于服务器控件是在触发Load事件后才被完全加载的,虽然在触发Init事件后可以访问服务器控件,但服务器控件的视图状态(Viewstate)并未加载,服务器控件拥有的是默认值,而不是客户端的返回

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号