ASP.NET(C#)程序设计李华清华大学出版社第1章ASP.NET概述第1章ASP.NET概述•ASP.NET4.0是微软公司为迎接网络时代的来临而设计提出的一个Web开发模型,它是建立在公共语言运行库上的编程框架。基于.NETFramework4.0,微软发布了ASP.NET4.0比较以前版本,它提供了新的功能,扩展了ASP.NETAJAX、LINQ数据源控件等等。•本章主要内容有:•ASP.NET和.NET框架简介•VisualStudio2010开发环境•建立一个简单应用程序4/5/20201.1ASP.NET简介•MicrosoftActiveServerPages(ASP),译为“活动服务器页面”。它是服务器端脚本编写环境,使用它可以创建和运行动态、交互的Web服务器应用程序。使用ASP可以组合HTML页、脚本命令和ActiveX组件以创建交互的Web页和基于Web的功能强大的应用程序。但由于ASP程序和网页的HTML混合在一起,这就使得程序看上去比较混乱,在开发过程中容易产生问题。同时,ASP页面是由脚本语言解释执行的,使得其速度受到影响。4/5/20201.1.1区分ASP.NET和C#•ASP.NET:用于创建动态Web页面的服务器技术,它允许使用由.NET支持的任何一种功能完善的编程语言;•C#:本书选用的编程语言,用于在ASP.NET中编写代码。•ASP.NET是一门技术而不是一种语言,ASP.NET页面可以通过许多编程语言访问,将利用C#创建Web页面,利用ASP.NET来驱动它。总之,ASP.NET是服务器端技术,它允许用户利用功能完善的编程语言创建自己的Web页面。•之所以选择C#,是因为它对于初学者来说是最为简单的,而且它可以完成其他.NET语言能够完成的大多数功能。4/5/20201.1.2ASP.NET工作原理•在多数场合下,可以将ASP.NET页面简单地看成一般的HTML页面,页面包含标记有特殊处理方式的一些代码段。当安装.NET时,本地的IISWeb服务器自动配置成查找扩展名为.aspx的文件,且用ASP.NET模块(名为aspnet_isapi.dll的文件)处理这些文件。•从技术上讲,ASP.NET模块分析ASPX文件的内容,并将文件内容分解成单独的命令以建立代码的整体结构。完成此工作后,ASP.NET模块将各命令放置到预定义的类定义中(不需要放在一起,也不需要按编写顺序放置)。然后使用这个类定义一个特殊的ASP.NET对象Page。4/5/20204/5/20204/5/20204/5/2020第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华信息检索5.45.25.1服务器控件常用控件介绍其他控件的简介5.4其他控件的简介5.数据验证控件5.35.4/5/2020第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华第五章ASP.NET控件技术与组件开发李华公司名称ASP.NET控件技术与组件开发ASP.NET是一种完全面向对象的程序设计方法,它将页面中所有元素都看成一个对象,而Web窗体就是承载这些对象的一个容器。所谓控件是一种可重用的组件或对象,这个组件有自己的外观、属性和方法,大部分控件可以响应系统或用户事件。在VisualStudio中系统内置了大量的控件,显示在工具箱中。5.1服务器控件ASP.NET服务器控件,一种服务器端组件,封装了用户界面及其相关的功能组件。包含用于为Web提供结构化程序更高的编程模型的内置的服务器控件和能够创建用户控件和自定义控件。服务器控件有三种:1、Web服务器控件—新的ASP.NET标签;2、HTML服务器控件—传统的HTML标签;3、验证服务器控件—用来验证输入有效性;5.2ASP.NET常用控件介绍5.2.1标签控件Label5.2.2文本框控件TextBox5.2.3Button控件5.2.4单选按钮控件RadioButton5.2.5复选框CheckBox5.2.6组框控件Panel5.2.7列表框ListBox控件5.2.8列表框CheckedBoxList控件5.2.9超链接控件HyperLink5.2.10文件上传控件FileUpload5.2.11DropDownList控件5.2.12Table控件5.2.13Image控件5.2.14ImageButton控件5.2.15ImageMap控件5.2.1标签控件Label1.功能Label控件又称标签控件,主要用于在页面上显示用户提示信息或用于说明某个控件的用途,其属性设置如图5—1所示。2.属性(1)ID属性(2)Text属性(3)Visible属性3.Label控件实例新建一个网站,默认主页为Default.aspx,在Default.aspx的设计视图中,添加Label控件。5.2.2文本框控件TextBox1.功能TextBox控件又称文本框控件,用于输入并显示一行文字。2.属性(1)TextMode属性(2)ReadOnly属性3.事件5.2.3Button控件1.功能使用“Button”控件,可让用户指示已完成表单或要执行特定的命令。2.属性(1)CausesValidation属性(2)OnClientClick属性(3)AccessKey属性5.2.4单选按钮控件RadioButton1.功能RadioButton控件是一组互斥的选项,同一组按钮中同一时间只能有一个按钮处于选中状态,可使用分组框来实现分组,也可以使用GroupName属性分组。2.属性(1)GroupName属性(2)Checked属性3.RadioButton控件实例5.2.5复选框CheckBox1.功能与单选按钮相比,每个复选框都是独立的,长城成组使用,若单击它则显示√表示选中。2.属性(1)AutoPostBack属性3.事件4.CheckBox控件实例5.2.6组框控件Panel1.功能Panel控件主要用于为其他控件提供可识别的分组。开发Windows应用程序时,通常使用Panel控件按功能细分窗体。在窗体设计时,所有控件都可以自由移动,而当移动Panel控件时,它包含的所有控件也将随着移动。2.属性(1)Directory属性(2)DefaultButton属性3.Panel控件实例5.2.7列表框ListBox控件1.功能列表框控件用于在一个矩形框中以列表的方式显示多行文本,供用户来选择。如果列表项的总数超出矩形框,将自动添加滚动条。2.属性3.事件SelectedIndexChanged4.ListBox列表框添加的3方法:5.2.8列表框CheckedBoxList控件1.功能CheckedListBox控件扩展了ListBox控件,它几乎能完成列表框可以完成的所有任务,并且还可以在列表中的项旁边显示复选标记。CheckedListBox控件与ListBox控件的主要差异在于复选列表框只能有一项选中或未选中任何项。注意,选定的项在窗体上突出显示,与已选中的项不同。2.属性(1)CheckedItems属性3.将CheckBoxList控件绑定到数据源5.2.9超链接控件HyperLink1.功能HyperLink控件又称超链接控件,可在网页上创建链接,使用户可以在应用程序中的页间移动。2.属性(1)NavigateUrl属性(2)Target属(3)ImageUrl属性:要显示的图像的URL。3.HyperLink控件实例5.2.10文件上传控件FileUpload1.功能FileUpload控件使用户能够上载图片、文本文件或其他文件,存储在服务器上的特定位置,在存储上载的文件之前检查其属性,限制可上载的文件的大小。当用户已选定要上载的文件并提交页时,该文件将作为请求的一部分上载。文件将被完整地缓存在服务器内存中。文件完成上载后,页代码开始运行。2.属性(1)FileName属性(2)MaxRequestLength属性(3)HasFile属性(4)PostedFile属性3.FileUpload控件实例5.2.11DropDownList控件1.功能DropDownList控件又称下拉菜单,用来创建下拉列表框,为单选列表框,且框中只显示被选中的列表项,其项列表在用户单击下拉按钮之前一直保持隐藏状态。2.属性(1)Selected属性:指示当前是否已选定此项。3.将DropDownList控件绑定到数据源5.2.12Table控件1.功能Table服务器控件使您能够在ASP.NET页上创建服务器可编程的表这是一种Web控件,它允许您使用与其他Web控件一致的对象模型来创建和操作表。2.向Table控件中添加行3.向Table控件的行中添加单元格5.2.13Image控件1.功能使用Image控件,可以在ASP.NET网页上显示图像,并用自己的代码管理这些图像。2.属性(1)ImageUrl属性3.Image控件实例5.2.14ImageButton控件1.功能使用ImageButton控件将图片呈现为可单击的控件。当用户单击“ImageButton”控件时,将向控件的“Click”事件的事件处理程序传递包含指示用户单击位置坐标的参数。2.属性(1)AlternateText属性:图像无法显示时显示的文本。3.Image控件实例5.2.15ImageMap控件1.功能ImageMap控件可以创建一个图像,使其包含许多可由用户单击的区域,这些区域称为“热点”。每一个热点都可以是一个单独的超链接或回发事件。2.属性(1)HotSpotMode属性(2)HotSpots属性(3)Target属性5.3数据验证控件1、数据验证控件的主要类型3、数据验证控件的通用方法2、数据验证控件的主要属性4、数据验证控件的处理机制5.3.1必须验证控件RequiredFieldValidator1.功能RegularExpressionValidator控件的功能是用于判断用户是否完成指定的数据输入。一般情况下,页面中不显示验证控件,只有在出现输入错误时,才在控件中显示出错提示信息。如用户注册时,在没有填写用户姓名的情况下,验证控件将显示错误提示“姓名不能为空”。5.3.2比较验证控件CompareValidator1.功能CompareValidator控件的功能是验证输入控件的输入信息是否满足设定的常数值,或与其他输入控件的输入信息进行比较,以确定这两个值是否与比较运算符(小于、等于、大于等等)指定的关系相匹配。如注册某网站,在填写密码时,往往需要用户输入两次密码,并验证密码输入相同与否。2.属性(1)ControlToCompare属性(2)Operator属性(3)Type属性(4)ValueToCompare属性5.3.3范围验证控件RangeValidator1.功能RangeValidator控件的功能是用于检查输入数据是否在指定范围。如用户注册时,用户年龄输入时,输入数据可以限制在0到200之间。2.属性(1)MaximumValue属性:设置比较数据范围上限。(2)MinimumValue属性:设置比较数据范围下限。5.3.4正则表达式验证控件RegularExpressionValidator1.功能RegularExpressionValidator控件的功能