1

我需要在大量控件中更改一堆属性。我很难让它工作。我在正确的轨道上吗?

foreach(var c in this.Controls.OfType<Label>())
            {
                c.Text = "test";
            }

发生的事情是 var c 只是创建一个新对象而不是编辑现有对象。我怎样才能访问真正的控制权?

4

2 回答 2

3

你可以试试这个

 List<Control> controls = Controls.OfType<Label>().Cast<Control>().ToList();
  foreach (Control m in controls)
  {
      m.Text = "test";

  }
于 2012-07-01T22:03:51.890 回答
2

尝试以下操作:

foreach(var c in this.Controls)
{
    var label = c as Label;
    if(label != null) label.Text = "test";
}
于 2012-07-01T22:02:36.287 回答