2009-04-21 42 views
1

我有一些ASP.NET代碼可以爲頁面上的表格控件動態生成行和單元格。在動態生成的控件上使用FindControl

我已經專門設置了每個單元格的ID,但是我無法使FindControl真正找到它們。

下面是我用它來創建細胞代碼:

tbc = New TableCell 
tbr.Cells.Add(tbc) 
tbc.ID = String.Format("tc_{0}-{1}-{2}", curStartDate.Day, curStartDate.Month, curStartDate.Year) 

正下方的是,我試圖找到以下控制:

Dim ctlName As String = String.Format("tc_{0}-{1}-{2}", curStartDate.Day, curStartDate.Month, curStartDate.Year) 
Dim ctl As Control = tblAllocations.FindControl(ctlName) 

我曾嘗試調換行使用將單元格添加到TableRow的Cells集合的行來聲明該ID,並使其生效。但是在我的應用程序中,我按照上面的順序聲明瞭它們,並且它們工作正常(FindControl可以找到具有正確ID的控件)。

有什麼明顯的我失蹤了嗎?

回答

1

當你說「低於那個」時,你是否將tbr添加到了tblAllocations.Rows中?如果沒有,那將是無法找到的原因。

+0

是的,它已被肯定添加。我可以看到頁面輸出中的行和單元格。單元格的ID也輸出到HTML中。 – 2009-04-21 12:13:37