0

私はこのコードで実行時に動的に作成された更新パネルにテーブルを持っています:

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はリテラルコントロールに変換するのですか?

4

1 に答える 1

0

IDテーブルに与え、FindControlループを使用せずにこのテーブルを取得するために使用します。

tblmain.ID = "tblMain";
tblmain.ClientID = "tblMain";
...
Table tbl = (Table)myDiv.FindControl("tblMain");
于 2013-07-20T13:14:10.087 に答える