Можете ли вы добавить дочерние элементы управления к HtmlGenericControl?

У меня есть очень простая операция, когда я пытаюсь добавить HtmlGenericControl к другому HtmlGenericControl:

protected void Page_Load(object sender, EventArgs e)
{

  HtmlGenericControl div = new HtmlGenericControl("div");
  HtmlGenericControl p = new HtmlGenericControl("p");

  div.Controls.Add(p);//exception occurs
}

Исключение возникает только в отладчике - сама страница отображается, как будто ничего не произошло. Однако что-то определенно происходит, так как в большей части кода элементы управления не отображаются должным образом.

enter image description here

Фактическое исключение:

{InnerText = '((System.Web.UI.HtmlControls.HtmlContainerControl)(div)).InnerText' threw an exception of type 'System.Web.HttpException'}

Я не могу понять, почему это происходит, поскольку вы должны быть в состоянии добавьте элементы управления друг к другу таким образом.

Обратите внимание, что, начиная с первого ответа, я попробовал еще раз с идентификаторами, но это все равно не сработало:

enter image description here

У меня есть дополнительная информация. При использовании элемента управления Placeholder в качестве родительского нет никаких исключений:

protected void Page_Init()
{
  PlaceHolder ph = new PlaceHolder();
  HtmlGenericControl p = new HtmlGenericControl("p");

  ph.Controls.Add(p);//no problem
}
17
задан Petras 12 July 2011 в 06:25
поделиться