У меня есть очень простая операция, когда я пытаюсь добавить 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
}
Исключение возникает только в отладчике - сама страница отображается, как будто ничего не произошло. Однако что-то определенно происходит, так как в большей части кода элементы управления не отображаются должным образом.
Фактическое исключение:
{InnerText = '((System.Web.UI.HtmlControls.HtmlContainerControl)(div)).InnerText' threw an exception of type 'System.Web.HttpException'}
Я не могу понять, почему это происходит, поскольку вы должны быть в состоянии добавьте элементы управления друг к другу таким образом.
Обратите внимание, что, начиная с первого ответа, я попробовал еще раз с идентификаторами, но это все равно не сработало:
У меня есть дополнительная информация. При использовании элемента управления Placeholder в качестве родительского нет никаких исключений:
protected void Page_Init()
{
PlaceHolder ph = new PlaceHolder();
HtmlGenericControl p = new HtmlGenericControl("p");
ph.Controls.Add(p);//no problem
}