在动态生成的控件上使用FindControl

时间:2009-04-21 11:06:04

标签: asp.net dynamic-controls

我有一些ASP.NET代码,可以为页面上的Table控件动态生成行和单元格。

我已经专门设置了每个单元格的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)

我尝试交换声明ID的行,使用将单元格添加到TableRow的Cells集合中的行,这样就可以了。但是在我的应用程序中,我按照上面的顺序进行了语句,并且它们工作正常(FindControl可以找到具有正确ID的控件)。

我有什么明显的遗失吗?

1 个答案:

答案 0 :(得分:1)

当你说“只是低于那个”时你已经将tbr添加到了tblAllocations.Rows了吗?如果不是那就是它无法找到的原因。