1、 Asp.net服务器控件提供更加统一的编程接口,如每个Asp.net服务器控件都有Text属性。
2、 隐藏客户端的不同,这样程序员可以把更多的精力放在业务上,而不用去考虑客户端的浏览器是ie还是firefox,或者是移动设备。
3、 Asp.net服务器控件可以保存状态到ViewState里,这样页面在从客户端回传到服务器端或者从服务器端下载到客户端的过程中都可以保存。
4、 事件处理模型不同,Html标注和Html控件的事件处理都是在客户端的页面上,而Asp.net服务器控件则是在服务器上,举例来说:
<input id="Button4" type="button" value="button" runat="server"/>是Html控件,此时我们点击此按钮,页面不会回传到服务器端,原因是我们没有为其定义鼠标点击事件。<input id="Button4" type="button" value="button" runat="server" onserverclick="test" />我们为Html控件添加了一个onserverclick事件,点击此按钮页面会发回服务器端,并执行test(object sender, EventArgs e)方法。
<asp:Button ID="Button2" runat="server" Text="Button" />是Asp.net服务器控件,并且我们没有为其定义click,但是我们点击时,页面也会发回到服务器端。
由此可见:Html标注和Html控件的事件是由页面来触发的,而Asp.net服务器控件则是由页面把Form发回到服务器端,由服务器来处理。
最简单的就是你在Visualstudio中新建一个网站,在里面添加一个asp.net的页面,在将html或者asp文件用记事本打开,将html中的<head></head>复制到asp.net中,html中的<body></body>复制到asp.net的
<from></from>中,添加控件的话可以直接在工具栏中拖拽,或者直接把html中的html空间加上<runat="server">弄成服务器控件就OK了,希望能帮到你