当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net Page.Controls对象(找到所有服务器控件)

ASP.NET
合理的网盟广告策略:如何规划与投放网盟广告
GoDaddy Backorder域名抢注经验分享
Google Analytics获得GOOGLE真正的收录网站数据指标
Visual Studio 2008 Team Suite简体中文正式版- 激活方法

ASP.NET 中的 asp.net Page.Controls对象(找到所有服务器控件)


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

通过此对象找到所有服务器控件。 实例一:
前台
复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div id="div1">
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>

后台
复制代码 代码如下:

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string name = "tree";
//Server.Transfer("ajax.aspx?id=1&name="+name);
ChangeControls();
}
/************Controls属性************
* this.Controls则包括所有控件。
* System.Web.UI.LiteralControl
System.Web.UI.HtmlControls.HtmlHead
System.Web.UI.LiteralControl
System.Web.UI.HtmlControls.HtmlForm
System.Web.UI.LiteralControl
* 为<div id="div1">加上runat属性,则Form.Controls里则找不到Button1
*/
private void ChangeControls()
{
foreach (System.Web.UI.Control control in this.Form.Controls)
{
if (control is Button)
{
Button btn = (Button)control;
btn.Text = "Hello";
}
}
foreach (Control control in this.Controls)
{
Response.Write(control.ToString() + "<br/>");
}
}
}