当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET立即上手教程(3)

ASP.NET
asp.net 动态生成表格
asp.net 程序优化精选
DataGridView自动调整行高和行宽
asp.net+js实现的ajax sugguest搜索提示效果
asp.net 将设有过期策略的项添加到缓存中
asp.net SqlDataAdapter对象使用札记
DataGrid 动态添加模板列 实现代码
asp.net 设置GridView的选中行
the sourcesafe database has been locked by the administrator之解决方法
asp.net 退出登陆(解决退出后点击浏览器后退问题仍然可回到页面问题)
Asp.Net HttpHandler 妙用
ASP.NET 保留文件夹详解
asp.net 中将表单提交到另一页 Code-Behind(代码和html在不同的页面)
SqlDataSource 链接Access 数据
asp.net GridView的删除对话框的两种方法
asp.net 按字节检查包含全半角的文字
asp.net String.IsNullOrEmpty 方法
asp.net System.Net.Mail 发送邮件
c# 读取文件内容存放到int数组 array.txt
asp.net Split分割字符串的方法

ASP.NET立即上手教程(3)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 242 ::
收藏到网摘: n/a

处理服务器控件事件

每一个asp.net服务器控件都具有对象模型的特点,包含属性、方法和事件。Asp.net开发者可以使用这个对象模型来动态修改页面,以及与页面交互。

下面的例子演示了asp.net页面开发者如何通过处理<asp:button runat=server>控件的OnClick事件,来操纵<asp:label runat=server> 控件的Text 属性。

这个简单的例子在功能上等于前面介绍的"Intro3" 例子。然而,你却可以发现基于服务器控件的这个版本是多么的简单而清晰!

使用自定义的服务器端控件

ASP.NET提供了45个内置的服务器控件以供使用 (详细内容参阅 Web Forms 控件参考)。除了使用内置的ASP.NET 控件以外,开发者也可以使用第三方提供的控件。

下面的例子展示了一个简单的日历控件(Calenda)。这个控件在页面中使用<acme:calendar runat=server>标签来声明。请注意在页面顶端的<% Register %>使用TagPrefix注册"Acme",使用Namespace说明执行控件的名称空间。Asp.net页面分析器将在运行时刻使用这个名称空间来装载Calendar控间类的实例。

在这个例子中,日历控件被设计为在Internet Explorer 5.5以上版本中执行“高级运行”,在其他浏览器上执行“低级运行”。在asp.net提供的内置服务器控件中,都可以实现这种对浏览器版本的监测。对于IE5.5以上版本,他生成DHTML输出。DHTML输出不要求服务器与客户端的循环往复。对于其他版本的浏览器,这个控件生成标准的HTML3.2文档。在交互的时候,需要客户端和服务器端的循环往复。

重要提示:页面设计者在编写代码的时候,不需要考虑浏览器在访问页面的时候,是“高级运行”还是“低级运行”。Calendar 控件自己封装了处理不同浏览器请求的能力。

列表、数据、和数据绑定

ASP.NET内置了一套数据表格和列表的控件,可以提供自定义的用户接口驱动,来实现对数据库或其它数据源的请求。例如,下面的例子演示了<asp:datagrid runat=server>控件如何使用SQL数据库查询语言来实现对BOOK信息集合的数据绑定。

<asp:datagrid runat=server> DataGrid控件使用传统的表格接口,提供了一种简单而快速的显示数据结果的途径。此外,ASP.NET开发者也可以使用<asp:DataList runat=server> DataList控件以及自定义的ItemTemplate模板来定制数据的显示方式。

注意到<asp:datalist runat=server>控件允许最终用户精确的控制列表中每一个项目的结构和外观显示(使用ItemTemplate模板属性)。该控件同时自动的处理两列之间内容的换行(用户可以通过它的RepeatColumns属性来控制列的数目)

下面的例子提供了一种<asp:datalist runat=server>控件隔行交替显示的样子。

注意这里的控件、数据模型和页面用户都与前一个例子相同。差别在于,本例在代码中声明了其他的模板。

表单验证控件
ASP.NET Web Forms 页框架提供了一套服务器验证控件,它容易使用而功能强大,用来检查客户端表单输入的错误,并且(如果必要的话)可以向用户显示提示信息。
在页面中增加服务器验证控件就像使用其他服务器控件一样。不同的验证情况有不同的验证控件,例如输入范围检查或者模式匹配等等。使用RequiredFieldValidator验证控件可以确保用户不会跳过一个应该输入数据的字段。
下面的例子演示了如何在页面中使用<asp:requiredfieldvalidator runat=server> 控件来验证TextBox 和 DropDownList 控件的内容。
C# Intro11.aspx
[运行] | [源代码]

注意验证控件也提供了“高级运行”和“低级运行”支持。高版本浏览器模式在服务器端和客户端执行(使用JAVA脚本和DHTML),低板本浏览器模式仅仅在服务器端执行验证。两种情况下的程序模式是一样的。

注意,ASP.NET页面开发者可以在运行时可随时检查Page.IsValid属性,来确定是否该页面的所有验证控件都通过。这就提供了是否进行商务逻辑处理的一个简单的方法。例如,下面的例子对特定分类执行数据库查询的时候,首先执行Page.IsValid检查。

Web Forms代码分离

ASP.NET支持两种创作动态页面的方法。第一种是如前面的例子中演示的那样,页面代码在同一个.aspx文件中声明。另一个方法----人们熟知的代码分离,可以让页面代码更加整洁,把程序代码从HTML内容中分离出来,成为一个完整的单独的文件。

下面的例子演示了利用代码分离技术编写ASP.NET页面

本章小结

1. ASP.NET提供了一种简单而功能强大的方法,来建立动态WEB用户接口

2. ASP.NET Web Forms 页可以自动适应任何浏览器客户(不需要脚本库或者COOKIE的支持)

3. ASP.NET Web Forms 页提供与现有ASP页面的语法兼容

4. ASP.NET 服务器控件提供了封装常用功能的简易方法。

5. ASP.NET 提供了45个内置的服务器控件.开发者也可以使用第三方提供的控件。

6. ASP.NET 服务器控件能够自动设计高级动态模式和低级浏览器HTML模式

7. ASP.NET 模板可以轻松的定制列表服务器控件的外观,从而定制页面数据显示的外观。

8. ASP.NET 验证控件可以方便的进行客户端或服务器端数据的验证