【北大青鸟】---服务器控件


HTML控件:

HTML客户端的事件是不会提交给服务端的 ,比如说点击一个按钮只会改变文字的颜色 ,并且只是针对用户机器本身,并不会发送数据包给远程的服务器,与 Web 服务器控件相比,HTML 服务器控件没有 asp 标记前缀。



Web 服务器控件:

类似 HTML 服务器控件,Web 服务器控件同样在服务器创建,且需要 runat="server" 属性才能工作。不过,Web 服务器控件不必映射任何已有的 HTML 元素。
创建一个 Web 服务器控件的语法是:
<asp:control_name id="some_id" runat="server" />

验证控件
这个控件在视频中讲的有点少,所以我查了一下资料,顾名思义,验证控件就是用来验证的! 在ASP.NET中,为了防止用户随意地输入错误数据,通常要编写大量的javascript代码,在客户端提前预防错误。ASP.NET 3.5提供了5中验证控件,其中4个用于对指定类型的错误进行验证,还有一种可以提供自定义的验证。这些控件大多在客户端完成验证过程,也可以定义服务器的验证方式。


在这里我们着重的是HTML控件和Web服务器控件的对比如下图:
【北大青鸟】---服务器控件_第1张图片

其实这两者的是十分相同的,用一句话描述就是:Web服务器控件是HTML控件的一种扩展。
它们的区别是:
1、Web服务器控件可以自动检测浏览器并调整到恰当的显示,而HTML控件没有自动适应功能,必须在代码中手动检测浏览器。  
2、HTML控件只有变为HTML服务器控件才可以在后台代码中找到该控件,否则不识别。(转换方法是:在HTML控件的属性代码中加上runat="server")
3、HTML控件的客户端事件处理比较方便。WEB服务器控件需要通过服务器处理后译为HTML控件再发送给浏览器,所以比较耗费服务器资源。(可能不是非常全面,请指教!)

小总:

自我感觉这两者特别的像,但是用的时候得区分才能更好的设置网页的外观,以及网页的变化和服务器的交互!也就是如果某些控件不需要服务器端的事件或状态管理功能时,可以选择HTML控件,这样可以提高应用程序的性能。 

你可能感兴趣的:(【北大青鸟】---服务器控件)