如何在运行时访问asptable

时间:2013-07-20 07:27:10

标签: asp.net

我的更新面板中有一个表,它在运行时使用以下代码动态创建:

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?

1 个答案:

答案 0 :(得分:0)

ID提供给您的表并使用FindControl获取此表而不使用循环:

tblmain.ID = "tblMain";
tblmain.ClientID = "tblMain";
...
Table tbl = (Table)myDiv.FindControl("tblMain");