〖处理服务器控件事件 每一个asp.net...... 处理服务器控件事件 每一个asp.net服务器控件都具有对象模型的特点,包含属性、方法和事件。Asp.net开发者可以使用这个对象模型来动态修改页面,以及与页面交互。 下面的例子演示了asp.net页面开发者如何通过处理 C# Intro6.aspx [运行] | [[源代码] 这个简单的例子在功能上等于前面介绍的"Intro3" 例子。然而,你却可以发现基于服务器控件的这个版本是多么的简单而清晰! 使用自定义的服务器端控件 ASP.NET提供了45个内置的服务器控件以供使用 (详细内容参阅 Web Forms 控件参考)。除了使用内置的ASP.NET 控件以外,开发者也可以使用第三方提供的控件。 下面的例子展示了一个简单的日历控件(Calenda)。这个控件在页面中使用 C# Intro7.aspx [运行] | [源代码] 在这个例子中,日历控件被设计为在Internet Explorer 5.5以上版本中执行“高级运行”,在其他浏览器上执行“低级运行”。在asp.net提供的内置服务器控件中,都可以实现这种对浏览器版本的监测。对于IE5.5以上版本,他生成DHTML输出。DHTML输出不要求服务器与客户端的循环往复。对于其他版本的浏览器,这个控件生成标准的HTML3.2文档。在交互的时候,需要客户端和服务器端的循环往复。 重要提示:页面设计者在编写代码的时候,不需要考虑浏览器在访问页面的时候,是“高级运行”还是“低级运行”。Calendar 控件自己封装了处理不同浏览器请求的能力。 列表,数据,和数据绑定 ASP.NET内置了一套数据表格和列表的控件,可以提供自定义的用户接口驱动,来实现对数据库或其它数据源的请求。例如,下面的例子演示了 C# Intro8.aspx [运行] | [源代码] C# Intro9.aspx [运行] | [源代码] 注意到 下面的例子提供了一种 C# Intro10.aspx [运行] | [源代码] 注意这里的控件、数据模型和页面用户都与前一个例子相同。差别在于,本例在代码中声明了其他的模板。 表单验证控件 ASP.NET Web Forms 页框架提供了一套服务器验证控件,它容易使用而功能强大,用来检查客户端表单输入的错误,并且(如果必要的话)可以向用户显示提示信息。 在页面中增加服务器验证控件就像使用其他服务器控件一样。不同的验证情况有不同的验证控件,例如输入范围检查或者模式匹配等等。使用RequiredFieldValidator验证控件可以确保用户不会跳过一个应该输入数据的字段。 下面的例子演示了如何在页面中使用 C# Intro11.aspx [运行] | [源代码] 注意验证控件也提供了“高级运行”和“低级运行”支持。高版本浏览器模式在服务器端和客户端执行(使用JAVA脚本和DHTML),低板本浏览器模式仅仅在服务器端执行验证。两种情况下的程序模式是一样的。 注意,ASP.NET页面开发者可以在运行时可随时检查Page.IsValid属性,来确定是否该页面的所有验证控件都通过。这就提供了是否进行商务逻辑处理的一个简单的方法。例如,下面的例子对特定分类执行数据库查询的时候,首先执行Page.IsValid检查。 C# Intro12.aspx [运行] | [源代码] Web Forms代码分离 ASP.NET支持两种创作动态页面的方法。第一种是如前面的例子中演示的那样,页面代码在同一个.aspx文件中声明。另一个方法----人们熟知的代码分离,可以让页面代码更加整洁,把程序代码从HTML内容中分离出来,成为一个完整的单独的文件。 下面的例子演示了利用代码分离技术编写ASP.NET页面 C# Intro13.aspx [运行] | [源代码] 本章小结 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 验证控件可以方便的进行客户端或服务器端数据的验证 www.ourasp.net------wincheer------待续。。。。 |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-30 07:22 , Processed in 0.239362 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.