炫浪网首页 | 加入收藏夹 登录 | 注册
logo
网站导航: 炫浪首页游戏频道女性风采科技学院精品素材桌面壁纸BT影视网络社区健康生活
热门栏目: 炫友贴图编程开发硬件学堂博客空间游戏攻略游戏资源时尚女性美容护肤教程下载
炫浪(科技.学院)
 | 网站首页 | 系统软件 | 图形图像 | 编程开发 | 网络应用 | 硬件学堂 | 办公应用 | 〖图书馆〗 | 
  您现在的位置: 炫浪学院 >> 编程开发 >> 网页制作 >> Asp.net >> 正文

总结asp.net的几个常用控件本质

炫浪 科技.学院 时间:2007-12-11 16:48:27 来源:炫浪 发表评论 社区讨论

在我的一个项目中需要对于控件进行区分总结,我在网上找了找加上自己的实际测试总结如下:

  asp.net之所以现在开发方便和快捷,关键是它有一组强大的控件库,包括web服务器控件,web用户控件,web自定义控件,html服务器控件和html控件等。这里我主要说说html控件、html服务器控件和web服务器控件的区别。

  1.html控件:就是我们通常的说的html语言标记,这些语言标记在已往的静态页面和其他网页里存在,不能在服务器端控制的,只能在客户端通过javascript和vbscript等程序语言来控制。

  <input type="button" id="btn" value="button"/> 2.html服务器控件:其实就是html控件的基础上加上runat="server"所构成的控件。它们的注意区别是运行方式不同,html控件运行在客户端,而html服务器控件是运行在服务器端的。参考其他资料是这样说的: 当ASP.NET 网页执行时,会检查标注有无runat 属性,如果标注没有设定,那么Html标注就会被视为字符串,并被送到字符串流等待送到客户端,客户端的浏览器会对其进行解释;如果Html标注有设定runat="server" 属性,Page 对象会将该控件放入控制器,服务器端的代码就能对其进行控制,等到控制执行完毕后再将Html服务器控件的执行结果转换成Html标注,然后当成字符串流发送到客户端进行解释<input id="Button" type="button" value="button" runat="server" /> 3.web服务器控件:也称asp.net服务器控件,是Web Form编程的基本元素,也是asp.net所特有的。它会按照client的情况产生一个或者多个html控件,而不是直接描述html元素。如: <asp:Button ID="Button2" runat="server" Text="Button"/>那么它和html服务器控件有什么区别呢?参照其他网页的资料看法如下:

  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发回到服务器端,由服务器来处理。

  4.下面我就结合我自己的测试来说明问题:

  这段代码是我放在repeat中的模板里的:其中DeleteCheck是一个js脚本函数,注意是用于是否发送到服务器端的,这里就不展示脚本代码了。 <input runat="server" type="button" id="delete" value="Server button" />

  <input type="button" onclick="return DeleteCheck(this)" id="Button1" value="Client button" />

  <input runat="server" type="submit" onclick="return DeleteCheck(this)" id="Button2" value="Server submit" />

  <input type="submit" onclick="return DeleteCheck(this)" id="Button3" value="Client submit" />

  <button runat="server" id="button4" onclic

[1] [2] [3] 下一页

  • 上一篇文章:

  • 下一篇文章:
  • 发 表 评 论
    姓 名: 主 页:
    评 分: 1分 2分 3分 4分 5分
    内 容:
    频 道 推 荐

    优秀程序员的两大要

    信息时代如何成为一

    如何成为一名C++程序

    Java程序员认证模拟

    高级程序员级考试大

    初级程序员级考试大
    最 新 热 门
    相 关 文 章
    新.Net开发必备工具详解之Snippet 
    在DNN 4.X中自定义登录界面
    .net开发:如何为程式码加上行号
    While deploying... 错误的解决办法
    aspx页面作为模板引擎的一种实现
    字符串和十六进制之间的转换方法
    如何使用ASP.Net加密Cookie
    使用ASP.Net中的自定义控件
    Configuration类在网页实现web.con
    ASP.Net MVC框架配置与分析
    相 关 新 贴
    广 告 展 示

    炫浪网 业务、广告:web#xvna.com (请将#换成@) 业务广告QQ 业务广告QQ2
    Copyright @ 2006-2007 All Right Reserved (主域名 xvna.com 粤ICP备07040110号)
    【声明】本网站部分内容属社区网友发布,本网站仅提供网友交流平台,但有权在本网站范围内引用、发布、转载来自论坛网友发布的内容。网友发布内容纯属个人行为,与本网站立场无关。本网站对于论坛网友发布的内容所引发的版权、署名权的异议及纠纷,不承担任何责任。其他媒体转载须事先与原作者和本网站联系。