这个真没有,估计楼下两位看错了——人家是将所有的textbox的text都赋值为'qq',而不是将某个ID的textbox赋值。
目前好象只有迭代方式实现,还没有能在后台一次取完的!
但是,如果是这样的话,还真有办法处理:问题在就在于继承上!
public class DefinedTextBox :TextBox
{
public DefinedTextBox()
{
this.Text = "qq";
}
//other code in here;
}
然后每一人TextBox不再使用TextBox,而是使用DefinedTextBox,在生成时就全部会生成这个!
当然,直接使用属性改造也是可以的!
除此之外,我也要学习!不过据我知,除了迭代没有其他的方法的!就算使用lambda表达式,虽然代码上没有了循环,其实生成后还是存在迭代的。
//给你演示如何获取全部控件,包括容器里面的
private ListAllControls = new List ();
private void FindControls(Control container)
{
foreach (Control c in container.Controls)
{
AllControls.Add(c);
if (c.HasChildren)
{
FindControls(c);
}
}
}
private void button1_Click(object sender, EventArgs e)
{
FindControls(this);
foreach (Control c in AllControls)
{
MessageBox.Show(c.Name.ToString());
}
}
这个 可以有
用findcontorl方法
具体你查下所用容易的findcontrols如何使用
在其他容器里面的控件需要用到一个FindControl(id)方法获取里面的控件
用多重循环试试行不,我现在手上没电脑只有手机,明天我试试看行不行再联系你