Это немного отличается от всех остальных вопросов, так как все они, похоже, относятся конкретно к содержанию заголовка.С этим у меня есть пользовательский элемент управления со следующим заполнителем:
<asp:PlaceHolder runat="server" ID="DiscussIncludes">
<script>
var OnLastPage = <asp:Literal runat="server" ID="OnLastPageJS" />;
var AJAXWait = false;
var MinChars = <%=Settings.MinimumCommentChars%>;
var AJAXURL = "<%=ResolveClientUrl("~/Handlers/DiscussAjaxHandler.ashx")%>";
var CurrUsername = "<%=ThisUser.Username %>";
var GravHash = "<asp:Literal runat="server" ID="GravJSRef" />";
var RelURL = "<%=ResolveClientUrl("~/users/")%>";
var Anch = "<%=Anchor.ToString()%>";
var MyRep = "<%=MyRepString%>";
var CurrReportID = 0;
var LastPageURL = "<asp:Literal runat="server" ID="JSLastPageURL" />";
var AllowedChars = <%=Settings.MaxCommentChars %>;
</script>
<script src="<%=CommonFunctions.AllocateStaticPath("/js/Discuss.js?v=" + Settings.JSVersionID)%>"></script>
<script src="<%=CommonFunctions.AllocateStaticPath("/js/BlockUI.js?v=" + Settings.JSVersionID)%>"></script>
</asp:PlaceHolder>
В коде у меня есть:
ContentPlaceHolder FooterControl = (ContentPlaceHolder)Page.Master.FindControl("JavascriptIncludes");
FooterControl.Controls.Add(DiscussIncludes);
Это выдает ошибку:
Коллекция элементов управления не может быть изменена, поскольку элемент управления содержит блоки кода (т. Е. <% ...%>).
В строке FooterControl.Controls.Add(DiscussIncludes);
.Я попытался изменить все <%=
на <%#
в заполнителе, но не повезло.
Следует отметить, что этот элемент управления отлично работает на всех других моих страницах.Есть идеи, что может быть причиной этого?