如何引用在运行时创建的动态文本框?

时间:2011-04-27 23:40:24

标签: asp.net vb.net dynamic reference textbox

我有一个引用WCF服务的ASP项目。完全是我需要的一半。

页面上的按钮从WCF调用一个函数,该函数返回一个对象列表(变量名称)。返回时,vb代码会动态地将文本框添加到页面上的面板中。像这样:

    For Each LetterVariables In LetterVarList
        tb = New TextBox
        lb = New Label
        lb.Text = LetterVariables._key & "  "
        tb.ID = LetterVariables._key
        pnlVars.Controls.Add(lb)
        pnlVars.Controls.Add(tb)
        Dim LineBreak As LiteralControl = New LiteralControl("<br />")
        pnlVars.Controls.Add(LineBreak)
    Next

现在问题是,完成此操作后,用户将在这些texbox中输入一些值。我(不知何故)需要引用这些texbox来在用户点击另一个按钮时阻止这些值。

我该怎么做?

谢谢, 杰森

2 个答案:

答案 0 :(得分:1)

您可以为TextBox提供一个可以使用FindControl进行检索的ID。

tb.ID = "txt" + LetterVariables._key.ToString();

然后当你想引用它时。

TextBox txtBox = (TextBox)FindControl("txt" + someKey);

这样的事可能适合你。

答案 1 :(得分:0)

在使用发布的值加载控件之前,不要忘记在帖子后面重新创建控件。