您好我最初使用此代码,但现在当我调试此代码时,我收到错误..
“无法修改Controls集合,因为控件包含代码块”
我的代码是:
for (int m = 0; m < dtGroupedByDate.Rows.Count; m++)
{
Label Date = new Label();
Date.Text = dtGrpBySmDate.Rows[m][0].ToString();
Date.Style["margin-left"] = (m > 0) ? "20px" : "0px";
this.Controls.Add(Date);
Label PowerSum = new Label();
PowerSum.Text = dtGroupedByDate.Rows[m][1].ToString();
PowerSum.Style["margin-left"] = "20px";
this.Controls.Add(PowerSum);
}
请帮助我,为什么我收到此错误..
答案 0 :(得分:2)
谷歌搜索引用的错误返回了该短语的完整匹配的整页,第一个很好地总结了问题:
基本上看起来如果在.aspx页面中使用<% ... %>
语法 where ,以这种方式修改Controls集合将会失败。
然后,该页面解释了您可以使用数据绑定语法<%# ... %>
来解决此问题,但根据具体情况,这可能并非总是可行。
第二个链接是关于该主题的相当全面的StackOverflow问题,可能也有帮助。