论文部分内容阅读
摘 要:本文简要介绍ASP.NET控件以及如何添加代码等。ASP.NET 控件和 HTML 内容共用,通常开发网站的时候要用HTML 建的网页的静态区域和用 ASP.NET 控件创建网页的动态区域。
关键词:.ASP;web服务器控件;验证控件;控件编程
1.介绍 ASP.NET 控件
ASP.NET 控件为的Web应用程序提供动态和交互的用户接口。这些控件能够让网站的使用者看见和交互,使用控件建立的HTML 窗体元素,可以做交互式日历,也可以做滚动标题广告。
ASP.NET 控件和 HTML 内容共用,通常开发网站的时候要用HTML 建的网页的静态区域和用 ASP.NET 控件创建网页的动态区域。
第二个难点就是ASP.NET页面的代码,既可以添加程序用户处理控件也可以处理页面事件。
如果一个使用者单击 HTML窗体中的Button按钮,这个按钮就会响应一个事件(单击事件)。典型应用是添加代码响应这个事件到页面中。当某人单击Button按钮控件的时候,可以保存窗体数据到一个文件或者数据库。
控件不是唯一的能响应一个事件,当它被请求的时候一个ASP.NET 页面每次都能够响应几个事件。每当请求一个页面,页面的初始化事件就会被触发。每当初始化事件发生的时候,必须要添加代码到页面中来执行。
2.Web服务器控件创建窗体
用几个基本Web控件来代替标准的 HTML 窗体元素,例如radio buttons、text boxes,and list boxes.能够用这些控件为的Web应用程序在的ASP.NET页面中创建用户界面。如何控制一个用户从一个ASP.NET页面转到另一个页面。首先,怎么把一个HTML窗体链接到另一个页面来获取信息。下一步,用Redirect()方法自动让一个用户浏览一个新的页面。可以使用超级链接控件把两个页面联系在一起。那么如何创建更有吸引力的Web窗体呢,首先,浏览一下针对所有Web控件格式属性他们是基本控件类的格式属性,然后,在Web控件上应用样式表风格。
3.用验证控件做页面验证
3.1 使用客户端验证
当在页面中增加验证功能时,可以添加窗体页面验证规则到服务器端代码,或者是添加验证规则到的客户端代码。写验证代码到客户端代码中的优势能够及时反馈到的用户。一个使用者忽略在一个要求检验的字段中输入一个值,能够及时的显示一个错误信息而不需要返回到服务器端解决。人们喜欢客户端的验证。它看起来很棒而且产生一种比较好的效果。然而,问题是它不与所有的浏览器兼容。不是所有的浏览器支持 JavaScript、不同版本的浏览器的不同版本支持 JavaScript,所以客户端验证没有保障。
由于这个原因,许多开发者在过去决定添加自定义验证到服务器端。因为服务器端代码能够和任何浏览器协同工作,比其他的验证方式更加的安全。
但是这些验证控件会自动地产生客户端代码和服务器端代码。如果一个浏览器有能力支持JavaScript,客户端的验证脚本将会自动返回到浏览器。如果一個浏览器不支持 JavaScript,那个验证规则会自动在服务器端代码中执行。但是客户端的验证仅适用于IE4.0或更高的版本。这也是这个控件的局限性。
3.2 控制字段:RequiredFieldValidator 控件
用这个控件来检查在一个Web窗体中是否为空,一般情况下需要和 TextBox 控件一起使用,但是这个控件也可以用在其他的输入型控件,例如:RadioButtonList.控件。
3.3 验证表达式:RegularExpressionValidator 控件
RegularExpressionValidator 控件来验证输入的值是否和定义的正则表达式相匹配。通过controlToValoadate属性,Operator属性和type属性验证一个用户是否输入一个合法的电子邮件地址,电话号码,用户名或密码。可以对于用户名的输入自定义一个正则表达式来限制用户名智能输入字母、下划线及数字。
3.4 比较值:CompareValidator 控件
这个CompareValidator 控件用于比较一个输入的数据和另外一个值是否相同。另外一个值可能是固定值,例如:一个特定的数字或者是输入到另一个控件中的一个值。
3.5 总结错误:ValidationSummary 控件
假想一个页面有50个字段假如仅仅用上部分讨论的那些验证控件来显示错误看见一个错误在页面中将是很难的。例如:可能需要滚动到第48个页面字段来找到这个错误信息。微软除了包含上面提到的控件还包括 ValidationSummary 控件。利用这控件可以综合所有的错误信息在一个页面的上端或者想要的任何一个地方。
4.先进的控件编程
4.1 保存浏览状态
几乎所有的 ASP.NET 控件都会在先前的窗体中保留他们的属性值。如果输入文本到一个Lebel标签上然后提交页面,当页面再次被访问时,Lebel标签的内容将会被保存下来。浏览状态的妙处是它不依赖任何的特定服务器或浏览器的属性。尤其,它不依赖cookies,session变量、或应用程序变量。浏览状态在一个名叫做VIEWSTATE的隐藏页面中执行,这个隐藏页面自动创建每个Web窗体。浏览状态能够在的网站中产生艺术性的和积极的效果,例如:如果在一个支持浏览状态的控件中显示数据库数据,不需要每次都返回到需要反馈到服务器的数据库页面。能够自动地保存页面里的数据状态。
4.2 显示和隐藏内容
例如设计一种在线纳税系统,若想要显示或者隐藏一个包含适用于已婚的税文件编档员的问题的部分。或者,若要添加一个帮助按钮到网站上去,可能想要隐藏或者显示完成依靠用户参考的问题的详细说明。例如把一个taxform 变成很多页面,以便一个人每次只看那个taxform的一部分。
4.3 使用Visible and Enabled属性
每个控件,包括 HTML 和Web控件,有一个Visible 属性来决定那个控件是否可见。当一个控件的Visible是false值,那个控件就不会在页面上显示;那个控件也不会进一步运行。
Web控件(不是每个HTML 控件)还有一个叫Enabled的属性。当Enabled的属性是false值,用的浏览器是IE4.0或更高的版本那个控件被封住了,也不起作用了,当用其他的浏览器的时候,如:网景浏览器那个控件不会被封,但它也是不起作用的。
4.4 使浏览状态失效
在特定的环境中,可能想要对一个单独的控件或ASP.NET页面作为一个整体的浏览状态失效,可能使用一个有包含许多数据的控件.(假想一个RadioButtonList 控件控制1,000 个选项)假如担心页面数据会大大的降低页面的显示速度,可能不想要加载数据到隐藏的VIEWSTATE页面字段。
4.5 使用丰富页面的控件
在下列的部分中,在ASP.NET Framework怎样使用三种特征控件。该如何使用日历控件显示交互式日历,AdRotator控件显示滚动的广告,HTMLInputFile控件来接受文件的上传。
参考文献
[1]梁爽 杨玥 吴晓艳 李环..NET框架程序设计.清华大学出版社.
[2]Michael Morrison.Head First JavaScript(影印版).东南大学出版社,2008.
关键词:.ASP;web服务器控件;验证控件;控件编程
1.介绍 ASP.NET 控件
ASP.NET 控件为的Web应用程序提供动态和交互的用户接口。这些控件能够让网站的使用者看见和交互,使用控件建立的HTML 窗体元素,可以做交互式日历,也可以做滚动标题广告。
ASP.NET 控件和 HTML 内容共用,通常开发网站的时候要用HTML 建的网页的静态区域和用 ASP.NET 控件创建网页的动态区域。
第二个难点就是ASP.NET页面的代码,既可以添加程序用户处理控件也可以处理页面事件。
如果一个使用者单击 HTML窗体中的Button按钮,这个按钮就会响应一个事件(单击事件)。典型应用是添加代码响应这个事件到页面中。当某人单击Button按钮控件的时候,可以保存窗体数据到一个文件或者数据库。
控件不是唯一的能响应一个事件,当它被请求的时候一个ASP.NET 页面每次都能够响应几个事件。每当请求一个页面,页面的初始化事件就会被触发。每当初始化事件发生的时候,必须要添加代码到页面中来执行。
2.Web服务器控件创建窗体
用几个基本Web控件来代替标准的 HTML 窗体元素,例如radio buttons、text boxes,and list boxes.能够用这些控件为的Web应用程序在的ASP.NET页面中创建用户界面。如何控制一个用户从一个ASP.NET页面转到另一个页面。首先,怎么把一个HTML窗体链接到另一个页面来获取信息。下一步,用Redirect()方法自动让一个用户浏览一个新的页面。可以使用超级链接控件把两个页面联系在一起。那么如何创建更有吸引力的Web窗体呢,首先,浏览一下针对所有Web控件格式属性他们是基本控件类的格式属性,然后,在Web控件上应用样式表风格。
3.用验证控件做页面验证
3.1 使用客户端验证
当在页面中增加验证功能时,可以添加窗体页面验证规则到服务器端代码,或者是添加验证规则到的客户端代码。写验证代码到客户端代码中的优势能够及时反馈到的用户。一个使用者忽略在一个要求检验的字段中输入一个值,能够及时的显示一个错误信息而不需要返回到服务器端解决。人们喜欢客户端的验证。它看起来很棒而且产生一种比较好的效果。然而,问题是它不与所有的浏览器兼容。不是所有的浏览器支持 JavaScript、不同版本的浏览器的不同版本支持 JavaScript,所以客户端验证没有保障。
由于这个原因,许多开发者在过去决定添加自定义验证到服务器端。因为服务器端代码能够和任何浏览器协同工作,比其他的验证方式更加的安全。
但是这些验证控件会自动地产生客户端代码和服务器端代码。如果一个浏览器有能力支持JavaScript,客户端的验证脚本将会自动返回到浏览器。如果一個浏览器不支持 JavaScript,那个验证规则会自动在服务器端代码中执行。但是客户端的验证仅适用于IE4.0或更高的版本。这也是这个控件的局限性。
3.2 控制字段:RequiredFieldValidator 控件
用这个控件来检查在一个Web窗体中是否为空,一般情况下需要和 TextBox 控件一起使用,但是这个控件也可以用在其他的输入型控件,例如:RadioButtonList.控件。
3.3 验证表达式:RegularExpressionValidator 控件
RegularExpressionValidator 控件来验证输入的值是否和定义的正则表达式相匹配。通过controlToValoadate属性,Operator属性和type属性验证一个用户是否输入一个合法的电子邮件地址,电话号码,用户名或密码。可以对于用户名的输入自定义一个正则表达式来限制用户名智能输入字母、下划线及数字。
3.4 比较值:CompareValidator 控件
这个CompareValidator 控件用于比较一个输入的数据和另外一个值是否相同。另外一个值可能是固定值,例如:一个特定的数字或者是输入到另一个控件中的一个值。
3.5 总结错误:ValidationSummary 控件
假想一个页面有50个字段假如仅仅用上部分讨论的那些验证控件来显示错误看见一个错误在页面中将是很难的。例如:可能需要滚动到第48个页面字段来找到这个错误信息。微软除了包含上面提到的控件还包括 ValidationSummary 控件。利用这控件可以综合所有的错误信息在一个页面的上端或者想要的任何一个地方。
4.先进的控件编程
4.1 保存浏览状态
几乎所有的 ASP.NET 控件都会在先前的窗体中保留他们的属性值。如果输入文本到一个Lebel标签上然后提交页面,当页面再次被访问时,Lebel标签的内容将会被保存下来。浏览状态的妙处是它不依赖任何的特定服务器或浏览器的属性。尤其,它不依赖cookies,session变量、或应用程序变量。浏览状态在一个名叫做VIEWSTATE的隐藏页面中执行,这个隐藏页面自动创建每个Web窗体。浏览状态能够在的网站中产生艺术性的和积极的效果,例如:如果在一个支持浏览状态的控件中显示数据库数据,不需要每次都返回到需要反馈到服务器的数据库页面。能够自动地保存页面里的数据状态。
4.2 显示和隐藏内容
例如设计一种在线纳税系统,若想要显示或者隐藏一个包含适用于已婚的税文件编档员的问题的部分。或者,若要添加一个帮助按钮到网站上去,可能想要隐藏或者显示完成依靠用户参考的问题的详细说明。例如把一个taxform 变成很多页面,以便一个人每次只看那个taxform的一部分。
4.3 使用Visible and Enabled属性
每个控件,包括 HTML 和Web控件,有一个Visible 属性来决定那个控件是否可见。当一个控件的Visible是false值,那个控件就不会在页面上显示;那个控件也不会进一步运行。
Web控件(不是每个HTML 控件)还有一个叫Enabled的属性。当Enabled的属性是false值,用的浏览器是IE4.0或更高的版本那个控件被封住了,也不起作用了,当用其他的浏览器的时候,如:网景浏览器那个控件不会被封,但它也是不起作用的。
4.4 使浏览状态失效
在特定的环境中,可能想要对一个单独的控件或ASP.NET页面作为一个整体的浏览状态失效,可能使用一个有包含许多数据的控件.(假想一个RadioButtonList 控件控制1,000 个选项)假如担心页面数据会大大的降低页面的显示速度,可能不想要加载数据到隐藏的VIEWSTATE页面字段。
4.5 使用丰富页面的控件
在下列的部分中,在ASP.NET Framework怎样使用三种特征控件。该如何使用日历控件显示交互式日历,AdRotator控件显示滚动的广告,HTMLInputFile控件来接受文件的上传。
参考文献
[1]梁爽 杨玥 吴晓艳 李环..NET框架程序设计.清华大学出版社.
[2]Michael Morrison.Head First JavaScript(影印版).东南大学出版社,2008.