这十几天来一直再看天轰穿的关于ASP.NET的视频,一个初中毕业的学生,自学成才,对.NET掌握的竟然比我们任何一个人都强很多,还可以作为我们的老师,在网上查了查他得相关资料,田洪川却自信地说:“在.NET技术方面,我愿意接受任何一个IT硕士生的挑战。我是自学出来的硕士生!”。我对他还是挺佩服的。
下面总结一下这几天关于控件上的收获吧!
ASP.NET中的控件简单的可以分为两大类:Web服务器控件和HTML客户端控件。
普通HTML脚本控件,属于客户端控件,用于客户端解释页面的显示的内容 也可以转化成服务器控件,只需要加上属性runat="server"。例如:
<input id="Button2" type="button" value="button"/>
<input id="Button3" type="button" runat="server" value="button" />前者是客户端控件,后者是服务端控件。html控件运行在客户端,而HTML服务器控件是运行在服务器端的。当ASP.NET 网页执行时,会检查标注有无runat 属性,如果标注没有设定,那么Html标注就会被视为字符串,并被送到字符串流等待送到客户端,客户端的浏览器会对其进行解释;如果HTML标注有设定runat="server" 属性,Page 对象会将该控件放入控制器,服务器端的代码就能对其进行控制,等到控制执行完毕后再将HTML服务器控件的执行结果转换成Html标注,然后当成字符串流发送到客户端进行解释
Web服务器控件以asp:开头,称为标记前缀,后面是控件类型, 例如:
<asp:Button ID="Button2" runat="server" Text="Button"/>这种标注方式就很清楚地知道控件的具体类型,不像HTML控件中都是input标记,还要看type属性才知道,通过观察服务端控件我们可以发现,其中的runat="server"属性是必不可少的属性,否则会出错;Web控件命名清晰明了;Web控件可以与windowsForm一样进行C#编程,拥有方法和属性,并且响应事件,可执行复杂的页面请求。Html标注和Html服务器控件的事件处理都是在客户端的页面上,而Asp.net服务器控件则是在服务器上,虽然在HTML代码中web服务器控件和html服务器控件的代码是不一样的,但是在浏览器中他们显示的是一样(对于浏览器是同等对待他们的,都是将数据传送至服务器执行,再返回结果。两个不同类型的控件都生成相同的HTML标记代码)
由此可见:HTML标注和HTML服务器控件的事件是由页面来触发的,而Asp.net服务器控件则是由页面把信息发回到服务器端,由服务器来处理。

一位初中毕业自学成才的ASP.NET专家分享了他对控件的理解,详细介绍了Web服务器控件和HTML客户端控件的区别,以及如何在ASP.NET中使用它们。文章还探讨了两者在事件处理、运行环境等方面的异同。
1333





