我正試圖在動態HTML表格中查找動態控件。我有以下內容:在動態HTML表格中查找動態控件
System.Web.UI.HtmlControls.HtmlTableRow TR = null;
System.Web.UI.HtmlControls.HtmlTableCell TD1 = null;
System.Web.UI.HtmlControls.HtmlTableCell TD2 = null;
System.Web.UI.HtmlControls.HtmlTableCell TD3 = null;
System.Web.UI.HtmlControls.HtmlTableCell TD4 = null;
System.Web.UI.HtmlControls.HtmlTableCell TD5 = null;
System.Web.UI.HtmlControls.HtmlTableCell TD6 = null;
// Database stuff
int i = 1;
while (objRdr.Read())
{
TR = new System.Web.UI.HtmlControls.HtmlTableRow();
TD1 = new System.Web.UI.HtmlControls.HtmlTableCell();
TD2 = new System.Web.UI.HtmlControls.HtmlTableCell();
TD3 = new System.Web.UI.HtmlControls.HtmlTableCell();
TD4 = new System.Web.UI.HtmlControls.HtmlTableCell();
TD5 = new System.Web.UI.HtmlControls.HtmlTableCell();
TD6 = new System.Web.UI.HtmlControls.HtmlTableCell();
// ASP code maybe wrong, but its to give you the ID.
TD1.InnerHtml = "<asp:RadioButton runat='server' ID='radApprove"+i.ToString()+"' Value='Approve' />";
TD2.InnerText = HttpUtility.HtmlEncode(objRdr[1].ToString());
TD3.InnerText = HttpUtility.HtmlEncode(objRdr[6].ToString());
TD4.InnerText = HttpUtility.HtmlEncode(objRdr[2].ToString());
TD5.InnerText = HttpUtility.HtmlEncode(objRdr[10].ToString());
TD6.InnerText = HttpUtility.HtmlEncode(objRdr[8].ToString());
TR.Cells.Add(TD1);
TR.Cells.Add(TD2);
TR.Cells.Add(TD3);
TR.Cells.Add(TD4);
TR.Cells.Add(TD5);
TR.Cells.Add(TD6);
tblOrderItems.Rows.Add(TR);
TR = null;
TD1 = null;
TD2 = null;
TD3 = null;
TD4 = null;
TD5 = null;
TD6 = null;
i++;
}
現在,當我嘗試從單元中獲取數據時,它失敗。我曾嘗試過:
this.FindControl("radApprove1");
但是這會返回一個null
。我也嘗試迭代表中的行,但它只表示1行,這是標題。該代碼從Page_Load
中調用,所以我認爲我可以獲得這些控件。在呈現頁面後查看頁面的HTML源代碼時,我可以看到它們已被正確渲染。有任何想法嗎?
你介意爲radApprove渲染什麼? – maxisam
我是否介意?不適用於您:oS –
是否有任何理由不想使用「友好的數據綁定」控件,例如中繼器或數據網格?我已經與我自己的桌子控制我的戰鬥,感覺就像我總是鬆動: -/ – Patrick