我的更新面板中有一个表,它在运行时使用以下代码动态创建:
Table tblmain = new Table();
TableRow tblrow = new TableRow();
TableCell tblcell = new TableCell();
tblmain.Rows.Add(tblrow);
myDiv.Controls.Add(tblmain);
现在我想访问此表。但是当我尝试通过这段代码完成这项工作时:
Table tbl = (Table)myDiv.Controls[0];
我收到此错误:
无法将“System.Web.UI.LiteralControl”类型的对象强制转换为“System.Web.UI.WebControls.Table”。
为什么asptable转换为literalcontrol?
答案 0 :(得分:0)
将ID
提供给您的表并使用FindControl
获取此表而不使用循环:
tblmain.ID = "tblMain";
tblmain.ClientID = "tblMain";
...
Table tbl = (Table)myDiv.FindControl("tblMain");