Web控件可分三类

HTML控件

html服务器控件是在HTML控件的基础上,额外增加了一个在当前页面唯一的ID属性值和一个runat = "server" 属性
html服务器控件必须放在服务器表单中,必须在<form runat="server" id="form表单的ID"></form>标记之中
html服务器控件最终在web服务器处会被解释成普通HTML控件标记发送到客户端浏览器

<input id="Text1" type="text" />
 运行在客户端,没有回传,不能用VIEWSTATE维持状态,浏览器完成事件处理
HTML服务器控件
<input id="Text1" type="text" runat="server" />

Web服务器控件 事件驱动编程模型,跨浏览器兼容性,统一的编程接口

简单控件 容器控件 数据绑定控件 数据验证控件及用户控件
asp.net服务器控件都直接或间接派生自System.Web.UI.Control类
ClientID 控件的标识符,在客户端HTML中表示为控件的id属性
ID 在服务器端编程时用户操作控件的ID
skinID 使用主题外观之后控件的ID
UniqueID 控件的分层ID,在客户端HTML代码中表示为控件的name属性
<asp: runat ="server"></asp:>
用户控件和自定义控件
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

48-57
65-90
97-122

FileUpload
<input type="file" .../>
FileBytes byte[] 上传的文件内容的字节数组表示形式
FileContent Stream 上传文件的数据流
FileName string 上传文件在客户端的名字
HasFile bool 指示是否上传的文件
PostedFile HttpPostedFile 获取文件基础的HttpPostedFile

HttpPostedFile对象提供了已经上传的文件的单独访问
ContentLength int 上传的文件内容的字节长度
ContentType string 上传文件的MIME内容类型
FileName string 上传文件在客户端的名字
InputStream Stream 指向上传文件的Stream对象

FileUpload控件上传文件一般有如下步骤:
利用HasFile属性判断是否上传了文件
在服务器上指定一个物理路径,并检查这个物理路径是否存在,若不存在则先创建
指定上传文件在服务器上的上传路径,利用SaveAs()保存上传的文件
还可以检查上传的文件格式是否符合要求以及文件内容大小是否符合要求
将相对路径或URL地址保存起来,以便客户访问或者下载

Panel控件是一个容器控件,用来组容器存储一组容器控件,它常用来存放一组业务逻辑上相似的控件组,设置Panel控件的某些属性就相当于设置了这个控件组里所有控件的相应属性,操作起来相当方便

PlaceHolder控件的用作容器控件,不过控件本身在客户端不产生任何HTML标记
PlaceHolder控件有一个Controls属性,这个属性表示这个容器控件容纳的控件的集合,Controls属性是ControlCollection类的一个实例,这方法向集合中个类有Add()方法增加控件,用Remove()方法删除控件,还有一个Count属性表示这个集合中共有多少个控件

对于一个普通HTML表单,它有两个重要的属性action和method
action属性指明当前表单提交之后由哪个程序来处理,这个处理程序可以是任何动态网页或者servlet或者CGI(Common Gateway Interface),在asp.net里面一般都是由aspx页面来处理的。
method属性指明表单提交的方式,它有两个可能值get和post。
get:会在地址栏会显示参数名和参数值,面post方式不会。用post提交参数相对来说更隐蔽一些,也相对安全一些。
get方式提交有最大字符数的限制,而post方式则没有这个限制。

1.第一个基础html知识,Request.Form 接收的是Name值,而非ID值
2.第二个基础asp.net知识,asp.net的控件的ID和Name值是一样第,但是其在客户端表现是control.clientID而非control.ID
3.第三个基础知识asp.net本身也是可以跨页提交滴,如果是使用自己带的跨页提交就不存在上述问题,不过asp.net自己带的跨页提交有另外的接收方式

服务器端表单比HTML表单多了两个属性:id和runat属性。
如<form id="form1" runat="server"></form>
可以不指定action属性,表示由当前页面处理,也可以不指定method属性,默认为post方式提交表单。
在服务器端表单里,我们不光可以使用HTML控件,还可以使用HTML服务器控件,还可以使用asp.net控件
在asp.net页面中可以有多个不带runat="server"表单,但只能有一个服务器表单

HTML服务器控件还提供一些区别于普通HTML控件的属性,比如HTML的Button服务器控件提供了一个onserverclick属性,这个属性表示当点击这个按钮之后会提交给此属性指定的服务器端方法进行处理。
<input type="submit" runat="server" id="btnOK" value="提交" onserverclick="btnOk_Click"
protected void btnOK_Click(Object object,EventArgs args)
business logic layer
data Access layer

Web控件的更多相关文章

  1. 2015.2.16 关于delphi web控件打开新网页时弹出关闭页面(js代码)出错的解决办法研究

    参考网址1:http://www.csharpwin.com/csharpspace/2360.shtml...参考网址2:http://www.oschina.net/question/234345 ...

  2. 033. asp.netWeb用户控件之二将页面转换成web控件和使用Web控件显示热点新闻

    访问Web用户控件的属性 ASP.NET提供的各种服务器控件都有其自身的属性和方法,程序开发人员可以灵活地使用服务器控件中的属性和方法开发程序.在用户控件中,程序开发人员也可以自行定义各种属性和方法, ...

  3. [MFC] MFC 打开HTML资源(用ID版,也可加载到自己的web控件上)

    @ ^ @:如果是加载到web控件上,就把注释掉的解除注释(改为web控件点后面的函数),把下一句注释 BOOL Button::LoadFromResource(UINT nRes){//打开网页加 ...

  4. 译:c#生成条码的web控件

    译文:http://www.codeproject.com/Tips/846860/Csharp-Barcode-Generator-Web-Control 在asp.net的web页用c#的web控 ...

  5. Javascript语法去控制Web控件的Enabled属性

    Web控件当使用Enabled属性时,它生成html之后会变成了disabled了.我们为了能够在javascript去控制控件的禁用与启用,得从这个disabled入手.如:

  6. Web控件文本框Reset的功能

    在前一篇中<怎样实现Web控件文本框Reset的功能>http://www.cnblogs.com/insus/p/4120889.html Insus.NET只实现了文本框的功能.单个或 ...

  7. 怎样实现Web控件文本框Reset的功能

    在ASP.NET开发过程序,在数据插入之后,文本框TextBox控件需要Reset.如果只有一两个文件框也许没有什么问题,如果网页上有很多文本框,你就会有点问题了.再加上某一情形,一些文本框是有默认值 ...

  8. 基本的Web控件四

    基本的Web控件用法二 ListBox控件 页面布局: <div> <h1>ListBox控件</h1> 学生列表: <br/> <asp:Lis ...

  9. 基本的Web控件三

    基本的Web控件用法一 ListBox控件 页面布局: <div> <h1>ListBox控件</h1> 学生列表: <br/> <asp:Lis ...

  10. 基本的Web控件一

    ASP.NET提供了与HTML元素相对应的基本Web控件,ASP.NET提供的基本的Web控件如下: 基本的Web控件       对应的HTML元素 Label  ----------------- ...

随机推荐

  1. Hibernate(二)Hibernate 实例

    上篇Hibernate(一)JDBC简介,我们主要对JDBC进行了简单介绍和使用说明,这次我们做一个Hibernate简单实例,通过这个实例对比Hibernate和JDBC,了解Hibernate的优 ...

  2. HDOJ/HDU 2560 Buildings(嗯~水题)

    Problem Description We divide the HZNU Campus into N*M grids. As you can see from the picture below, ...

  3. http 协议的过程

    当你输入某个网址的时候发生了什么? 首先:你该知道 a.http协议是应用层协议,他是浏览器像服务器请求网页,服务器返回网页的过程,他是基于tcp协议的. 1.假设随便输入输入域名 http://ww ...

  4. JavaScript高级程序设计13.pdf

    使用hasOwnProperty()方法检测一个属性存在实例还是原形中,当属性存在对象实例中时,返回true alert(person1.hasOwnProperty("name" ...

  5. HTML Meta, http-equiv, Refresh

    原文: http://www.lifelaf.com/blog/?p=481 在HTML页面中,如果想实现定时刷新或重定向,我们可以使用meta标签的refresh功能: <!-- 5秒后刷新页 ...

  6. PHP中Content-type的MIME类型大全说明

    <?php $mimetypes = array(         'ez' => 'application/andrew-inset', 'hqx' => 'application ...

  7. qut训练题解-2016-9-4个人赛

    题目链接:http://acm.hust.edu.cn/vjudge/contest/131124#overview 贴了链接这里就不上原题的描述了. A: B: 分析:这里用到简单的拓扑排序的算法. ...

  8. editplus 使用小技巧

    1 editplus怎么设置tab键跳的字符数? Tools -> Preferences -> Files -> Settings & syntax -> Tab/I ...

  9. linux —— 编译linux内核

    目录:     0.测试环境 1.获得最新内核源代码  2.编译源代码 3.运行新的内核 0.测试环境: 我的系统 : ubuntu 16.04 LTS (内核版本:4.4.0-36-generic ...

  10. 浅谈数据结构-Boyer-Moore算法

    上文讲解了KMP算法,这种算法在字符串匹配中应用比较少,在各种文本编辑器中的查找功能大多采用Boyer-Moore算法.1977年,德克萨斯大学的Robert S. Boyer教授和J Strothe ...