获取名称以特定字符串开头的所有控件
Get all controls with names that start with specific string
我们正在为一个学校项目创建一个 C# 应用程序,children 可以在其中学习。
我做了一个windows形式的模板,想把占位符改成child的选择,这样就可以变成1x选择,2x选择等等
我给每个标签取了一个以 tafel_noemer_
开头的名称 - tafel_noemer_1
、tafel_noemer_2
等
现在我想 select 所有这些标签直到标签 10 并更改占位符文本。我试过 this.Name.StartsWith("tafel_noemer_")
但无法让它与 foreach 一起工作。
有没有更好的方法来完成这个?
您可以使用 Linq 的 where 方法:
foreach (Label l in this.Controls.OfType<Label>().Where(l => l.Name.StartsWith("tafel_noemer_")))
{
l.Text = "bla bla";
}
我们正在为一个学校项目创建一个 C# 应用程序,children 可以在其中学习。
我做了一个windows形式的模板,想把占位符改成child的选择,这样就可以变成1x选择,2x选择等等
我给每个标签取了一个以 tafel_noemer_
开头的名称 - tafel_noemer_1
、tafel_noemer_2
等
现在我想 select 所有这些标签直到标签 10 并更改占位符文本。我试过 this.Name.StartsWith("tafel_noemer_")
但无法让它与 foreach 一起工作。
有没有更好的方法来完成这个?
您可以使用 Linq 的 where 方法:
foreach (Label l in this.Controls.OfType<Label>().Where(l => l.Name.StartsWith("tafel_noemer_")))
{
l.Text = "bla bla";
}