当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net下遍历页面中所有的指定控件的代码

ASP.NET
.Net将如何影响我们?(一)
.Net将如何影响我们?(二)
开发者面临的.Net挑战(一)
开发者面临的.Net挑战(三)
.Net的精髓-XML和SOAP(一)
.Net的精髓-XML和SOAP(二)
.Net的精髓-XML和SOAP(三)
.net的reflection (1)
.net的reflection (2)
Asp.net编写的PING工具
.NET语言的选择
且看微软的.Net和Sun公司的J2EE如何对垒
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(1)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(2)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(3)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(4)
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(5)
什么是配件(assembly)?
什么是映射(reflection)?
从一个舆论调查的制作谈面向对象的编程思路(一)

ASP.NET 中的 asp.net下遍历页面中所有的指定控件的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 258 ::
收藏到网摘: n/a

遍历aspx页面中所有的指定控件的代码 1.遍历页面中所有的TextBox,并将值设置成String.Empty
复制代码 代码如下:

for (int j = 0; j < this.Controls.Count; j++)
{
foreach (object o in Page.Controls[j].Controls)
{
if (o is TextBox)
{
TextBox txt = (System.Web.UI.WebControls.TextBox)o;
txt.Text = String.Empty;
}
}
}

2.递归遍历
复制代码 代码如下:

private void FindAllTextBoxByPageControl(ControlCollection controlCollection)
{
for (int i = 0; i < controlCollection.Count; i++)
{
if (controlCollection[i].GetType() == typeof(TextBox)) //System.Web.UI.WebControls.TextBox
{
(controlCollection[i] as TextBox).Text = String.Empty;
}
if (controlCollection[i].HasControls())
{
//递归 (重要) 否则将退出程序
FindAllTextBoxByPageControl(controlCollection[i].Controls);
}
}
}

调用方法
复制代码 代码如下:

FindAllTextBoxByPageControl(Page.Controls);