Control(控件)概念:Web服务器控件和HTml控件都是Control控件,这是Web页面能够容纳的对象之一。它是一个可重用的组件或者对象,这个组件不但有自己的外观,还有自己的数据和方法,大部分组件还可以响应事件。
Web服务器控件概念:web控件是在
服务器端
运行的:通俗点说就是web控件是在
服务器端
处理后生成静态代码发送给客户端浏览器, 书写格式简单,而且不用特别加runat语句,它的实质仍是html控件只不过是用别的方法重新封装了而已。
Html服务器控件概念:html 控件是普通控件,运行在客户端,要想让它在
服务器端
可执行必须加上runat=“server”和选择性加上ID=””。几乎所有的HTML标签控件加上runat=”Server”这个Server控件的标识属性后,都可以变成HTML控件,ID属性表示程序是以本属性来控制对象的,所以任何对象的名称不可重复,不管是否为同一种类,如该对象在程序不需要被程控则可以忽略ID属性的设定。HTML控件在Web网页的Page页面中使用。
如果想要减轻服务器的负担可以采用HTML控件,HTML控件的客户端事件处理比较方便,可以直接在控件中指定,直接调用js函数,如果是WEB 控件就必须采用程序指定了,比如在cs中采用c#函数。
Web服务器控件和Html服务器控件区别是:1)前者可以触发服务器控件特有的事件,后者只能通过回递的方式触发服务器上的页面级事件。2)输入到前者中的数据在请求之间可以维护(即具有状态管理功能),而后者无法自动维护数据,只能使用页面级的脚本来保存和恢复。3)前者可以自动检测
浏览器
并调整到恰当的显示,而后者没有自动适应功能,必须在代码中手动检测
浏览器
。4)每个服务器控件都具有一组属性,可以在
服务器端
的代码中更改控件的外观和行为,而后者只有HTML属性。如果某些控件不需要
服务器端
的事件或状态管理功能时,可以选择
HTML控件
,这样可以提高应用程序的性能。在不是一定需要使用服务器控件的时候最好用
html控件
,因为每次页面运行,里面的服务器控件会向服务器里请求数据及其他,这里会占用一定的资源。
HTML服务器控件的优点:1.HTML控件将HTML标注对象化,可以让程序直接控制并设定其属性,这样一来程序代码和HTML控件分开,程序的架构就不会显得杂乱无章而不好管理。 2.HTML控件对事件的支持,以事件触发方式来编写程序,使得网页变的更加简单。
HTML服务器控件的缺点:1.不可在
后台代码中设置相关属性和方法等
2.获取HTML控件的值需要使用REQUEST的FORM方法,WEB控件就可以直接通过属性直接处理
Web服务器控件的优点:1.回传数据 2.带有事件驱动
Web服务器控件的缺点:1.比较耗费服务器资源 2.由于有viewstate,回传时保持控件状态(如不需要可设置为不保持)因此增加了回送信息量。