HtmlControls(以下简称HC)是对大部分Html标签的复制,这些标签原来是什么样,经过服务器解释后的HC就是什么样。要使用HC,只需要在相应的html标签内加上runat=“server”属性。例如:

<table border=1 cellspacing=0 cellpadding=4 Runat="Server">
<td Runat="Server"> Table Data </td>

Web controls(以下简称WC)是微软在原有html标签的基础上重新设计整理并抽象后的一套控件,虽然它最终还是会解释成html标签,但是它是对现有html标签的一种更合理更有意义的逻辑表示。为什么要建立这种不同的抽象?例如<select>标签,如果要建立一个单选下拉列表框,则如下:

<select name="favColor">
<option> Red </option>
<option> Blue </option>
<option> Green </option>
</select>

如果要建立一个多选下拉列表框,则如下:

<select name="favColor" Size="3" MULTIPLE>
<option> Red </option>
<option> Blue </option>
<option> Green </option>
</select>

运行结果:

可以看到,代码上很小的差别,显示出来的效果却差了很远。为了在代码中更清晰的表示这种差别,微软提供了两种<select>标签对应的WC:DropDownList 和 ListBox。

要使用WC,则按照如下形式:

<asp:TextBox id="username" Columns="30" Runat="Server"/>

另有一个例子说明了两者之间的区别

<%@ Page Language="C#" AutoEventWireup="true" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HtmlButton使用示例</title>
<script language="javascript" type="text/javascript">
function onClientclick() {
alert("单击了按钮");
}
</script>
<script type="text/C#" runat="server">
protected void ButtonOnclick(object sender, EventArgs e)
{
Response.Write("服务器端处理按钮事件");
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<h3>HtmlButton使用示例</h3>
</div>
<button id ="button1" onclick="onClientclick()" >客户端按钮</button>
<br /><br />
<button id ="button2" runat="server" onserverclick="ButtonOnclick" >服务器端按钮</button>
</form>
</body>
</html>

HtmlControls和Webcontrols命名空间的区别的更多相关文章

  1. 全局变量,extern和static以及命名空间的区别

    全局变量,extern和static以及命名空间的区别        全局变量只是在声明它的文件中有效,假如在另一个文件中声明定义了一个相同名称的全局变量,则在后续使用这两个变量的时候会产生名字上的冲 ...

  2. Call调用webservice接口,使用命名空间和不使用命名空间的区别

    生活中我们会遇到许许多多的奇葩问题,而这些问题又是我们不得不解决的. 我先用一段代码来引出我想要说的内容: import javax.jws.WebMethod; import javax.jws.W ...

  3. Django 中 app_name (应用命名空间) 和 namespace (实例命名空间) 的区别

    转自:https://www.jianshu.com/p/404500a0408a 补充理解: 先把官网上对应用命名空间(app_name)和实例命名空间(namespace)的解释贴上: app_n ...

  4. Web开发.net framework 类库中必须掌握的命名空间(或者类)【转】

    Web开发常用命名空间和类. System.Collections //命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合.System.Collections ...

  5. .net framework 类库中必须掌握的命名空间(或者类)

    Web开发常用命名空间和类. System.Collections //命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合.System.Collections ...

  6. .Net常用的命名空间

    -----------常用的命名空间--------地狱的镰刀 System.Collections //命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合. ...

  7. System.Web.UI.HtmlControls

    用来创建一个标签.HtmlContainerControl 一般用此类来新建标签. 可能我们熟悉System.Web.UI.WebControls;空间.System.Web.UI.WebContro ...

  8. 提问:错误提示--命名空间“System.Web”中不存在类型或命名空间名称“UI”(是缺少程序集引用吗?) 如何解决??

    转自:http://topic.csdn.net/u/20080723/21/7e1e06cb-d013-4675-ba9b-9b39d49d0a0e.html 1) 添加对System.Web.dl ...

  9. Repeater的分页

      Repeater控件是个好东西.轻量级.又好用.完全的自定义.但是,正是因为这些优点它没有自动分页的功能.这个需要研究一下.我看了一下起点等小说网站,那些什么推荐排名榜用Repeater控件那是很 ...

随机推荐

  1. SSH异常“Failed to start OpenSSH Server daemon”

    [root@bogon yum]# systemctl status sshd.service● sshd.service - OpenSSH server daemon   Loaded: load ...

  2. ALV界面显示

    PERFORM ADD.   IS_LAYOUT_LVC-CWIDTH_OPT = 'X'.   IS_LAYOUT_LVC-SEL_MODE = 'A'. CALL FUNCTION 'REUSE_ ...

  3. [z]Linux下压缩与解压

    1.压缩命令: 命令格式:tar  -zcvf   压缩文件名.tar.gz   被压缩文件名 可先切换到当前目录下.压缩文件名和被压缩文件名都可加入路径. 2.解压缩命令: 命令格式:tar  -z ...

  4. Mysql: Specified key was too long; max key length is 1000 bytes

    在使用quartz持久化的时候,笔者使用的mysql,为了以后方便迁移数据,笔者的Mysql默认引擎MyISAM 于是顺理成章的执行了quartz-2.2.3\docs\dbTables\tables ...

  5. #define INVSQRT2 0.707106781 平方根倒数速算法

    转自 http://www.cnblogs.com/pkuoliver/archive/2010/10/06/1844725.html 源码下载地址:http://diducoder.com/sotr ...

  6. Oracle_PL/SQL(2) 过程控制

    0.检索单行数据0.1使用标量变量接受数据例1: 7788declare v_ename emp.ename%type; v_sal emp.sal%type;begin select ename,s ...

  7. mysql mysqld.sock文件丢失问题

    修改mysql 编码为utf8时 在/etc/mysql/目录下 在 [client] 添加 default-character-set=utf8 [mysqld]添加 default-charact ...

  8. Java 7.35 游戏:猜字游戏(C++&Java)

    Ps: 有人可能好奇我为什么大费周章的去写主函数,而不直接把所有操作放在类中,Why?类就好比骨干(存放核心的数据和功能),最好提供接口, 避免了类中的输入输出,当然,这也不是绝对的. C++: #i ...

  9. python消息队列Queue

    实例1:消息队列Queue,不要将文件命名为"queue.py",否则会报异常"ImportError: cannot import name 'Queue'" ...

  10. 08. pt-find

    vim pt-find.cnf host=192.168.100.101port=3306user=adminpassword=admin pt-find --config pt-find.cnf d ...