使用foreach循环遍历TextBoxes列表

时间:2014-05-23 19:43:45

标签: c# foreach

我使用for循环来计算它,但是当我尝试使用foreach循环时,我得到一个无法将TextBox转换为int。我还没有使用过很多foreach循环,我做错了什么?

这有效

for (int i = 0; i < list.Count; ++i)
{
    list[i].Text = "5.0";
}

如何让它工作

foreach (TextBox element in list)
{
    list[element].Text = "5.0";   //get Error her
}

2 个答案:

答案 0 :(得分:3)

你需要:

foreach (TextBox element in list)
{
    element.Text = "5.0";
}

在您的第一个代码示例list[i]代表TextBox列表中的单个项目,在您的foreach循环中,element代表相同的内容。

IMO,通常是,应避免在foreach循环中进行修改,最后可能会编写代码,在那里更改实际列表,(不仅仅是属性列表中的一个对象,并以异常结束,&#34;在枚举后修改了集合&#34;。

答案 1 :(得分:2)

仅使用element

foreach (TextBox element in list)
{
    element.Text = "5.0";
}