Динамическое добавление веб-элемента управления на страницу .Aspx с блоками скриптов - PullRequest
0 голосов
/ 05 октября 2009

Я пытаюсь добавить элемент управления диаграммой на мою страницу .aspx, но получаю следующую ошибку:

Коллекция элементов управления не может быть изменена, поскольку элемент управления содержит блоки кода (т. Е. <% ...%>).

с этим кодом:

 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 () в нужном месте

1 Ответ

0 голосов
/ 05 октября 2009

Либо замените <% = на <% # (если можете), либо добавьте элемент управления PlaceHolder на страницу и добавьте свой элемент управления в коллекцию элементов управления PlaceHolder. </p>

...