ASP.NET HTML服务器控件和WEB服务器控件的区别

原创   ASP.NET HTML服务器控件和WEB服务器控件的区别 收藏

1、html服务器控件: 其实就是html控件的基础上加上runat="server"所构成的控件.它们的注意区别是运行方式不同,html控件运行在客户端,而html服务 器控件是运行在服务器端的。所有的HTML服务器控件都继承HtmlControl类,在该类下,可以分为三种类 型:HtmlInputControl(输入控件)、HtmlContainerControl(容器控件)、HtmlImage(图片控件)。
2、 web服务器控件:也称asp.net服务器控件,它能够比HTML展现更高级的功能,是Web Form编程的基本元素,也是asp.net所特有的。它会按照client的情况产生一个或者多个html控件,而不是直接描述html元素。如: <asp:Button ID="Button2" runat="server" Text="Button"/>。 
 
3、html服务器控件有什么区别呢?
       1)、Asp.net服务器控件提供更加统一的编程接口,如每个Asp.net服务器控件都有Text属性。
       2)、隐藏客户端的不同,这样程序员可以把更多的精力放在业务上,而不用去考虑客户端的浏览器是ie还是firefox,或者是移动设备。
       3)、Asp.net服务器控件可以保存状态到ViewState里,这样页面在从客户端回传到服务器端或者从服务器端下载到客户端的过程中都可以保存。
       4)、事件处理模型不同,Html标注和Html服务器控件的事件处理都是在客户端的页面上,而Asp.net服务器控件则是在服务器上。
举例来说:
<input id = "Botton" type = "button" value = "button" runat = "server"/>
是html服务器控件,此时我们点击此按钮,页面不会回传到服务器端,原因是我们没有为其定义鼠标点击事件。我们为html服务器控件添加一个onserverclick事件:
<input id = "Botton" type = "button" value = "button" runat = "server" onserverclick="test"/>

此时,点击此按钮页面会发回服务器端,并执行test(objecdt sender,EventArgs e)方法。

下面的代码:
<asp:Button ID="Button" runat="server" Text="Button"/>
是ASP.NET服务器控件,并且我们没有为其定义click,但是我们点击时,页面会发回到服务器端。
由此可见:html标注和html服务器控件的事件是由页面来触发的,而asp.net服务器控件则是由页面把form发回到服务器端,由服务器来处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值