我正在尝试将图表控件添加到我的.aspx页面,但是收到以下错误:
无法修改Controls集合,因为该控件包含代码块(即<%...%>)。
使用此代码:
protected void Page_Init(object sender, EventArgs e) {
if (Context.Items.Contains("ajaxChart")) {
ajaxChart = (bool) Context.Items["ajaxChart"];
}
if (Context.Items.Contains("chartControl") && ajaxChart) {
_ChartControl = (ChartControl) Context.Items["chartControl"];
}
if (_ChartControl != null) {
this.portletContent.Controls.Add(_ChartControl);
}
}
aspx页面本身有两个<%...%>在我的代码后面阻止调用方法。
<body>
<div id="portletContent" runat="server">
<%=Render()%>
</div>
</body>
有没有人以前解决过这个问题?我可以采取另一种方法来解决这个问题。我基本上需要将此控件注入此页面,并在正确的位置内联运行Render()方法
答案 0 :(得分:0)
将&lt;%=替换为&lt;%#(如果可以)或将PlaceHolder控件添加到页面中,并将控件添加到PlaceHolder的Control集合中。