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. centos7下haproxy1.7的使用与配置

    centos7下haproxy1.7的使用与配置 haproxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. 一.haproxy下载 ...

  2. MVC报错:找到多个与名为“Home”的控制器匹配的类型。

    错误原因是:在根目录中的Controller中有HomeController,而在Areas中也有一个HomeController,只是他们的命名空间不一样. 这样的话,只需要在对应的路由注册中加入命 ...

  3. ----转载----【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    关于 chrome 扩展的文章,很久之前也写过一篇.清除页面广告?身为前端,自己做一款简易的chrome扩展吧. 本篇文章重在分享一些制作扩展的过程中比较重要的知识及难点. 什么是 chrome 扩展 ...

  4. Java 7.21 游戏:豆机(C++&Java)

    PS: 难点在于,随机之后的分隔,理解就很容易了 注意:槽的奇偶情况 C++: #include<iostream> #include<ctime> #include<s ...

  5. do_something方法解析

    /** * 运行任务 * @param $interval * @return bool */ static public function do_something($interval) { //是 ...

  6. poj 2886 (线段树+反素数打表) Who Gets the Most Candies?

    http://poj.org/problem?id=2886 一群孩子从编号1到n按顺时针的方向围成一个圆,每个孩子手中卡片上有一个数字,首先是编号为k的孩子出去,如果他手上的数字m是正数,那么从他左 ...

  7. HDOJ2870 Largest Submatrix

    一道\(DP\) 原题链接 发现只有\(a,b,c\)三种情况,所以直接初始化成三个\(01\)方阵,找最大子矩阵即可. 我是先初始化垂直上的高度,然后对每一行处理出每个点向左向右的最大延伸,并不断计 ...

  8. UIDatePicker 时间选择器

    NSDate *currentTime = [NSDate date]; datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, ...

  9. 循环&信息添加&颜色修改

            #import "AViewController.h" @interface AViewController () <UIActionSheetDelegat ...

  10. Visual code 搭建Vue项目

    使用VS Code搭建Vue项目 1.安装 VScode 2..安装最新node.JS 2.安装cnpm镜像  淘宝镜像(node自带安装了npm,故不再安装) npm install -g cnpm ...