无法修改Controls集合,因为控件包含代码块(即<%...%>)

时间:2010-05-13 09:14:01

标签: c# asp.net

我正在尝试添加css表单代码。我的网站使用母版页。我收到错误控件集合无法修改,因为控件包含代码块(即<%...%>)。

我的代码snipet

string CssClass = string.Format("{0}/{1}?$BUILD$", BaseImageUrl, CssFileName);

HtmlLink css = new HtmlLink();
            css.Href = CssClass;
            css.Attributes["rel"] = "stylesheet";
            css.Attributes["type"] = "text/css";
            Header.Controls.Add(css);

有什么建议吗?

2 个答案:

答案 0 :(得分:7)

您无法修改head标记的Controls集合,因为标题中的代码包含代码块。所以,你有两个选择:

  • 从标题中删除代码块,并将数据放在代码后面的标题中。

  • 将一个容器放在head标签内(例如PlaceHolder)并将链接添加到容器的Controls集合中。

答案 1 :(得分:-1)

错误是因为在执行Javascript代码时尚未呈现控件。

我刚将javascript移到了页面底部。