在运行时创建文本框

时间:2011-05-02 19:36:04

标签: asp.net

如何在按钮单击时在运行时创建任意数量的文本框。还有什么是在运行时创建的文本框的id,并通过会话将textbox的值发送到下一页

请某人帮助我。我已经坚持了很多天,但无法解决它。

感谢

人员Prasanna

2 个答案:

答案 0 :(得分:1)

要在运行时创建文本框,可以在Page_Init中进行设置,如下所示:

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
    ' Create dynamic controls here.
    TextBox1 = New TextBox()
    TextBox1.ID = "TextBox1"
    TextBox1.Style("Position") = "Absolute"
    TextBox1.Style("Top") = "25px"
    TextBox1.Style("Left") = "100px"
    Form1.Controls.Add(TextBox1)

    TextBox2 = New TextBox()
    TextBox2.ID = "TextBox2"
    TextBox2.Style("Position") = "Absolute"
    TextBox2.Style("Top") = "60px"
    TextBox2.Style("Left") = "100px"
    Form1.Controls.Add(TextBox2)

End Sub

答案 1 :(得分:0)

在ASP.Net中创建动态控件可能有点棘手。原因是在Page_Init不会存储在View State中之后创建的任何控件。这意味着对于在Page_Init之后创建的控件,在页面上回发时输入控件的数据将会丢失。此外,这些控件不会触发事件。

这里可以找到一篇好的三篇文章 http://www.4guysfromrolla.com/articles/081402-1.aspx