System.Web.UI.HtmlControls简介
System.Web.UI.HtmlControls命名空间是专为创建ASP.NET应用程序而建立的,它包含了所有HTML服务器控件的类。HtmlControl类时所有HTML服务器控件的父类,该类定义了所有HTML服务器控件公共的属性、方法和事件。HtmlContainerControl类继承了HtmlControl类,该类是与具有开始标记和结束标记的HTML元素映射的HTML服务器控件的父类。如HtmlAnchor类、HtmlForm类、HtmlTable类等都是该类的子类。HTML服务器控件默认只在客户端使用,通过runat="server"属性可以使HTML服务器控件与服务器进行交互。
HTML服务器控件HTML服务器控件与标准的HTML元素相映射。ASP.NET把这些元素对象化,让程序可以直接控制。这样的好处就是使构建Web程序更加高效和灵活,还方便了代码的编写和维护。
HTML的锚点控件:HtmlAnchor控件HtmlAnchor控件与Html<a>元素映射。该控件可以用编程的方式控制HTML<a>元素,用于在Web窗体设置描点或其他网页的超链接。HtmlAnchor控件的语法定义如下所示:
HTML的Input系列控件:HtmlInput控件HtmlInput使用于输入数据的控件。该控件有10种类型,通过其Type属性可以设置不同的类型。HtmlInput控件包含的类型如下所述。
Button:普通按钮。
Submit:提交按钮。
Reset:重置按钮。
Image:显示图片的按钮。
Text:普通文本框。
Password:输入密码的文本框。
CheckBox:复选框输入控件。
Radio:单选按钮。
File:上传文件到服务器。
Hidden:输入隐藏内容的控件,如ID.
下面我重点讲述其中几个:
1、HtmlInputButton控件:该控件与<input type=button>元素映射。该控件的功能与HtmlButton控件相似,用于创建命令按钮。单击该控件将引发ServerClick事件,在此事件中可以编写要执行得代码。Value属性可以设置按钮显示的文本信息。HtmlInputButton控件的语法定义如下:
<input
type="Button"
id = "被程序代码识别的名称"
Visible="False|True"
OnServerClick="事件函数名"
runat="server"
value="显示按钮的文字"
/>
HtmlInputButton类的主要成员及其说明:
属性:Value:在控件上显示的文本信息
方法:ServerClick:单击控件时引发此事件
下面演示如何使用HtmlInputButton控件,代码如下:
<%@ 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" οnclick="onClientclick()" >客户端按钮</button>
<br /><br />
<button id ="button2" runat="server" onserverclick="ButtonOnclick" >服务器端按钮</button>
</form>
</body>
</html>
HTML的表格控件:HtmlTable控件HtmlTable控件与<table>元素映射。该控件是一个表格。一个表格包含行,行包含单元格。HtmlTable控件通常用设计页面的布局。其语法如下:
<table
ID="被程序代码识别的名称"
Align="left|Center|Right"
runat="server"
BGColor="背景色"
BorderColor="边框颜色"
CellPadding="像素"
CellSpacing="像素"
Hight="表格高度"
Rows="行的集合"
Width="表格的宽度"
>
<tr><td></td></tr>
</table>
HtmlTable类的主要成员及其说明:
Align:指定内容的对齐方式
BgColor:指定背景色
Border:指定边框大小
BorderColor:指定边框颜色
CellPadding:指定单元格的内容与边框的距离,以像素为单位
CellSpacing:指定相邻两个单元格的距离,以像素为单位
Rows:包含行的集合
Height:指定控件的高度
width:指定控件的宽度
下面演示如何使用HtmlTable控件,代码如下:
<%@ Page Language="C#" AutoEventWireup="True" %>
<script runat="server">
void Button_Click(Object sender, EventArgs e)
{
this.Table1.BgColor = this.BgColorSelect.Value;
this.Table1.Border = int.Parse(BorderSelect.Value);
this.Table1.BorderColor = this.BorderColorSelect.Value;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlTable使用示例</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>HtmlTable使用示例</h3>
<table id="Table1"
border="1"
runat="server">
<tr>
<th>
第一列
</th>
<th>
第二列
</th>
</tr>
<tr>
<td>
1
</td>
<td>
2
</td>
</tr>
<tr>
<td>
3
</td>
<td>
4
</td>
</tr>
</table>
<hr/>
选择显示设置: <br/><br/>
背景色:
<select id="BgColorSelect"
runat="server">
<option value="Red">Red</option>
<option value="Blue">Blue</option>
<option value="Green">Green</option>
<option value="Black">Black</option>
<option value="White" selected>White</option>
</select>
边框大小:
<select id="BorderSelect"
runat="server">
<option value="0">0</option>
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
边框颜色:
<select id="BorderColorSelect"
runat="server">
<option value="Red">Red</option>
<option value="Blue">Blue</option>
<option value="Green">Green</option>
<option value="Black" Selected>Black</option>
<option value="White">White</option>
</select>
<br/><br/>
<input id="Button1" type="button" value="设置" onserverclick ="Button_Click" runat="server"/>
</form>
</body>
</html>
HTML的数据行控件:HtmlTableRow控件HtmlTableRow控件与<tr>元素映射。该控件表示为HtmlTable控件的行,每行中包含一个或一个以上的单元格。通过其Align,BgColor等属性,可以设置控件的对齐方式、背景色等。
HtmlTableRow控件的语法定义如下:
<tr
ID="被程序代码识别的名称"
Align="left|Center|Right"
runat="server"
BGColor="背景色"
BorderColor="边框颜色"
Height="行高度"
Cells="单元格集合"
>
<td>单元格</td>
</tr>
HtmlTableRow类的主要成员及其说明:
Align:指定内容的对齐方式
BgColor:指定背景色
Border:指定边框大小
BorderColor:指定边框颜色
Cells:包含单元格的集合
Height:指定行的高度
下面将演示如何使用HtmlTableRow控件,代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="HtmlTableRow.aspx.cs" Inherits="HtmlTableRow" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>HtmlTableRow使用示例</title>
<script runat="server">
void Button_Click(Object sender,EventArgs e)
{
int cellcount = 1;
for (int i = 0; i <= Table1.Rows.Count - 1; i++)
{
Table1.Rows[i].Align = "center";
for (int i2 = 0; i2 <= Table1.Rows[i].Cells.Count - 1; i2++)
{
Table1.Rows[i].Cells[i2].InnerText = cellcount.ToString(); //与GridView1.Rows[i].Cells[0].Text几乎一样
cellcount++;
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>HtmlTableRow使用示例</h3>
<br/>
<table id="Table1" border="1" bordercolor="black" runat="server" width="50%">
<tr align="left">
<td>Cell 1</td><td>Cell 2</td>
</tr>
<tr align="left">
<td> Cell3</td><td>Cell 4 </td>
</tr>
</table>
<br/><br/>
<input id="Button1" type="button"
value="改变单元格的内容"
onserverclick="Button_Click"
runat="server"/>
</form>
</body>
</html>
运行后,结果如下:
HTML的单元格控件:HtmlTableCell控件HtmlTableCell控件与<td>和<th>元素映射。该控件表示为HtmlTableRow控件的Cell。其中<td>元素表示一般单元格,而<th>元素表示标题单元格。通过其Align,BgColor等属性,可以设置控件的对齐方式、背景色等。HtmlTableCell控件的语法定义如下:
<tr或th
ID="被程序代码识别的名称"
Align="left|Center|Right"
runat="server"
BGColor="背景色"
BorderColor="边框颜色"
Height="高度"
NoWap="True|False"
ColSpan="跨列数"
RowSpan="跨行数"
Width="宽度"
>
单元格内容
</tr或th>
下面将演示如何使用HtmlTableCell控件,代码如下:
<%@ Page Language="C#" AutoEventWireup="True" %>
<script runat="server">
void Button_Click(Object sender, EventArgs e)
{
this.column1.BgColor = "red";
this.column2.BgColor = "yellow";
this.cell1.BgColor = "green";
this.cell1.InnerText = "单元格1";
this.cell2.BgColor = "white";
this.cell2.Width = "50";
this.cell2.NoWrap = true;
this.cell2.InnerText = "单元格2的内容非常多,需要换行显示";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlTableCell 使用示例</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>HtmlTableCell 使用示例</h3>
<table id="Table1"
border="1"
runat="server">
<tr>
<th id ="column1" runat="server">
第一列
</th>
<th id ="column2" runat="server">
第二列
</th>
</tr>
<tr>
<td id="cell1" runat="server">
1
</td>
<td id="cell2" runat="server" >
2
</td >
</tr>
</table>
<br/><br/>
<input id="Button1" type="button" value="设置" onserverclick ="Button_Click" runat="server"/>
</form>
</body>
</html>