C# 获取错误:";无法修改控件集合";

C# 获取错误:";无法修改控件集合";,c#,asp.net,C#,Asp.net,嗨,我最初使用这段代码,但现在当我调试这段代码时,我得到了错误 “无法修改控件集合,因为该控件包含代码块” 我的代码是: 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) ? "20

嗨,我最初使用这段代码,但现在当我调试这段代码时,我得到了错误

“无法修改控件集合,因为该控件包含代码块”

我的代码是:

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);
}
for(int m=0;m0)?“20px”:“0px”;
此.Controls.Add(日期);
Label PowerSum=新标签();
PowerSum.Text=dtGroupedByDate.Rows[m][1].ToString();
PowerSum.Style[“左边距”]=“20px”;
this.Controls.Add(PowerSum);
}

请帮助我为什么会出现这个错误。

谷歌搜索引用的错误返回了一整页与该短语完全匹配的内容,第一页很好地总结了这个问题:

基本上,如果在.aspx页面的任何位置使用
语法,以这种方式修改控件集合将失败

然后,该页面解释说,您可以使用数据绑定语法
来解决这个问题,但根据具体情况,这可能并不总是可行的

第二个环节是关于这个主题的一个相当全面的问题,可能也会有所帮助


我怀疑这不是您错误的来源,您可以发布标记吗?请在发布问题之前尝试并进行更多研究,例如,如果您有错误,请尝试并用谷歌搜索错误文本-我知道您还没有尝试过,因为如果您有,你也应该知道要贴一些标记。@Kragen你是对的,谢谢你,伙计和@V4Vendetta如果你什么都不知道的话,请不要回复,不要让问题变得消极@如果你用了错误的精神,我精确地要求您发布标记,以便在任何时候都可以清楚地看到问题的起因。@V4Vendetta如果我知道问题,首先我会把我的问题放在那里,第二件事是我的这段代码在一页上运行良好,但在另一页上它会给我这段代码的错误,这就是为什么我感到惊讶,但Kragen是对,它帮了我