我试图找到一种方法来循环ASP占位符中"Checkbox"类型的所有控件,然后在循环中对控件执行某些操作.
问题是我无法访问控件...这是我到目前为止所拥有的...
string selections = ""; foreach (CheckBox ctrl in phProductLines.Controls.OfType) { selections += ctrl.Text + ", "; }
但是我收到了错误 - "Foreach无法对方法组进行操作".
任何帮助将不胜感激.
谢谢.
OfType
是一种方法,所以你必须添加()
:
foreach (CheckBox ctrl in phProductLines.Controls.OfType<CheckBox>()) { // ... }
顺便说一句,您可以使用LINQ并String.Join
获得所需的结果:
string result = string.Join(", ", phProductLines.Controls.OfType<CheckBox>() .Select(chk => chk.Text));
如果您只想要Checked
复选框:
string result = string.Join(", ", phProductLines.Controls.OfType<CheckBox>() .Where(chk => chk.Checked) .Select(chk => chk.Text));