ASP.NET VB.NET中的动态ID名称

我的ASP页面中有大约20个asp:标签,所有标签都是ID =“lbl#”,其中#的范围是0到22.我想动态地改变他们所说的内容.虽然我可以写

lbl1.Text = "Text goes here"

对于所有这23个人,我想知道是否有办法循环遍历所有这些并改变他们的文本.

我想到用我的所有标签创建一个数组,然后只做一个For Each循环,但是我还要在更改它的文本之前检查元素是否存在IsNothing,所以我卡在那里.

如果有人能帮助我,我真的很感激!

非常感谢你的帮助!!

最佳答案 您可以使用Page_Load方法中的System.Web.UI.Page.FindControl()方法动态查找页面上的控件:

Dim startIndex As Integer = 0
Dim stopIndex As Integer = 22

For index = startIndex To stopIndex
    Dim myLabel As Label = TryCast(FindControl("lbl" + index), Label)

    If myLabel Is Nothing Then
        Continue For
    End If

    myLabel.Text = "Text goes here"
Next
点赞