您可以使用加载集合中的所有文字,OfType稍后您可以修改它们的文本属性。
var literals = this.Page.Controls.OfType<Literal>();
foreach (Literal literal in literals)
{
literal.Text = "Your Text";
}
编辑:
由于您在页面上的另一个控件中拥有控件,因此您需要对控件进行嵌套搜索。您可以尝试以下扩展方法。取自这篇文章。
首先为扩展方法创建一个类:
public static class ExtensionMethod
{
public static IEnumerable<Control> FindAll(this ControlCollection collection)
{
foreach (Control item in collection)
{
yield return item;
if (item.HasControls())
{
foreach (var subItem in item.Controls.FindAll())
{
yield return subItem;
}
}
}
}
public static IEnumerable<T> FindAll<T>(this ControlCollection collection) where T : Control
{
return collection.FindAll().OfType<T>();
}
}
稍后您可以像这样使用它:
protected void Button1_Click(object sender, EventArgs e)
{
var literals = this.Controls.FindAll<Literal>();
foreach (Literal literal in literals)
{
literal.Text = "Your Text";
}
}