当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET入门教程:服务器控件

ASP.NET
Asp.net 时间操作基类(支持短日期,长日期,时间差)
asp.net 获取机器硬件信息(cpu频率、磁盘可用空间、内存容量等)
asp.net 数据库备份还原(sqlserver+access)
Asp.Net 数据操作类(附通用数据基类)
Asp.net 弹出对话框基类(输出alet警告框)
Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)
Asp.net Socket客户端(远程发送和接收数据)
Asp.net 字符串操作基类(安全,替换,分解等)
Asp.Net数据输出到EXCEL表格中
asp.net Gridview里添加汇总行
asp.net UpdatePanel的简单用法
asp.net ajaxControlToolkit FilteredTextBoxExtender的简单用法
this connector is disabled错误的解决方法
sql事务应用积累
asp.net Page.Controls对象(找到所有服务器控件)
在asp.NET中字符串替换的五种方法
ASP.NET缓存方法分析和实践示例代码
asp.net 在DNN模块开发中遇到的resx怪问题
ASP.NET State service状态服务的问题解决方法
asp.net 结合mysql存储过程进行分页代码

ASP.NET入门教程:服务器控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 119 ::
收藏到网摘: n/a

前面简单介绍了ASP.NET的入门内容,而且介绍了一个简单的ASP.NET程序的编写方法,今天继续学习ASP.NET的服务器控件。

服务器控件是服务器可以理解的标签。

Classic ASP 的局限性

下面列出的代码是从上一节中拷贝的:

<html>
<body bgcolor="yellow">
<center>
<h2>Hello RuanChen!</h2>
<p><%Response.Write(now())%></p>
</center>
</body>
</html>

上面的代码能够反映出 Classic ASP 的局限性:代码块必须放置在需要进行输出的位置。本信息代表文章来源网页教学ruanchen.com请大家去www.ruanchen.com浏览!

通过 Classic ASP,我们是无法将可执行代码与 HTML 本身进行分离的。这使得页面难以阅读,也难以维护。

ASP.NET - 服务器控件

通过服务器控件,ASP.NET 已经解决了上面所描述的“意大利面条式代码”的问题。

服务器控件是可被服务器理解的标签。

有三种类型的服务器控件:

  • HTML 服务器控件 - 传统的 HTML 标签
  • Web 服务器控件 - 新的 ASP.NET 标签
  • Validation 服务器控件 - 用于输入验证

ASP.NET - HTML 服务器控件

HTML 服务器控件是服务器可理解的 HTML 标签。

ASP.NET 中的 HTML 元素是作为文本来进行处理的。要想使这些元素可编程,就需要向这些 HTML 元素添加 runat="server" 属性。该属性指示,此元素是一个服务器控件。同时要添加 id 属性来标识该服务器控件。id 引用可用于操作运行时的服务器控件。

注释:所有 HTML 服务器控件必须位于带有 runat="server" 属性的 <form> 标签内。runat="server" 属性指示该表单应在服务器进行处理。它同时指示其包括在内的控件可被服务器脚本访问。

在下面的例子中,我们在 .aspx 文件中声明了一个 HtmlAnchor 服务器控件。然后我们在一个事件句柄中操作该 HtmlAnchor 控件的 HRef 属性。Page_Load 事件是众多 ASP.NET 可理解的事件中的一种类型:

注释:事件句柄(event handler)是一种针对给定事件执行代码的子例程。本文由软晨学习网ruanchen.com整理发布!转载请注明出处,谢谢!

<script runat="server">
Sub Page_Load
link1.HRef="http://www.ruanchen.com"
End Sub
</script>
<html>
<body>
<form runat="server">
<a id="link1" runat="server">Visit ruanchen.com!</a>
</form>
</body>
</html>

提示:可执行代码本身已被移到 HTML 之外了。

ASP.NET - Web 服务器控件

Web 服务器控件是服务器可理解的特殊 ASP.NET 标签。

类似 HTML 服务器控件,Web 服务器控件也在服务器上创建,它们同样需要 runat="server" 属性以使其生效。不过,Web 服务器控件没有必要映射任何已存在的 HTML 元素,它们代表更复杂的元素。

创建 Web 服务器控件的语法是:

<asp:control_name id="some_id" runat="server" />

在下面的例子中,我们在 .aspx 文件中的声明了一个 Button 服务器控件。然后我们为 Click 事件创建了一个事件句柄,它可修改按钮上的文本:

<script runat="server">
Sub submit(Source As Object, e As EventArgs)
button1.Text="You clicked me!"
End Sub
</script>
<html>
<body>
<form runat="server">
<asp:Button id="button1" Text="Click me!" runat="server" OnClick="submit"/>
</form>
</body>
</html>

ASP.NET - Validation 服务器控件

Validation 服务器控件用于验证用户输入。如果用户输入没有通过验证,将给用户显示一条错误消息。

默认地,当点击 Button, ImageButton 或 LinkButton 时,页面验证才会被执行。您可通过把 CausesValidation 属性设置为 false,来阻止某个按钮控件被点击时进行验证。

创建 Validation 服务器控件的语法是:

<asp:control_name id="some_id" runat="server" />

在下面的例子中,我们在 .aspx 文件中声明了一个 TextBox 控件,一个 Button 控件,以及一个 RangeValidator 控件。如果验证失败,文本 "The value must be from 1 to 100!" 将显示在 RangeValidator 控件中:

<html>
<body>
<form runat="server">
<p>Enter a number from 1 to 100:
<asp:TextBox id="tbox1" runat="server" />
<br /><br />
<asp:Button Text="Submit" runat="server" />
</p>
<p>
<asp:RangeValidator
ControlToValidate="tbox1"
MinimumValue="1"
MaximumValue="100"
Type="Integer"
Text="The value must be from 1 to 100!"
runat="server" />
</p>
</form>
</body>
</html>