T
Tipo70
I am having problems after adding dynamic controls in a custom web control.
I have no problem adding the controls. However in the example below, when
someone clicks on the button, the data in the previous textbox is gone. Is
there any way I can get this data to stay.
<ToolboxData("<{0}:TestWebControl runat=server></{0}:TestWebControl>")> _
Public Class TestWebControl
Inherits WebControl
Implements INamingContainer
Private btnAdd As New Button
Public Sub New()
AddHandler btnAdd.Click, AddressOf btnSubmit_Click
End Sub
Protected Overrides Sub CreateChildControls()
Controls.Clear()
btnAdd.ID = "btnAdd"
btnAdd.Text = "Add Box"
If numBoxes = 0 Then numBoxes = 1
For i As Integer = 1 To numBoxes
Dim myTextBox As New TextBox()
myTextBox.ID = "myTextBox" & i
myTextBox.Width = 200
Controls.Add(myTextBox)
Controls.Add(New LiteralControl("<br>"))
Next
Controls.Add(New LiteralControl("<br>"))
Controls.Add(btnAdd)
End Sub
Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As
EventArgs)
numBoxes = numBoxes + 1
Me.ChildControlsCreated = False
End Sub
Public Property numBoxes() As Integer
Get
Me.EnsureChildControls()
Return ViewState("numBoxes")
End Get
Set(ByVal value As Integer)
Me.EnsureChildControls()
ViewState("numBoxes") = value
End Set
End Property
End Class
Thanks in advance
I have no problem adding the controls. However in the example below, when
someone clicks on the button, the data in the previous textbox is gone. Is
there any way I can get this data to stay.
<ToolboxData("<{0}:TestWebControl runat=server></{0}:TestWebControl>")> _
Public Class TestWebControl
Inherits WebControl
Implements INamingContainer
Private btnAdd As New Button
Public Sub New()
AddHandler btnAdd.Click, AddressOf btnSubmit_Click
End Sub
Protected Overrides Sub CreateChildControls()
Controls.Clear()
btnAdd.ID = "btnAdd"
btnAdd.Text = "Add Box"
If numBoxes = 0 Then numBoxes = 1
For i As Integer = 1 To numBoxes
Dim myTextBox As New TextBox()
myTextBox.ID = "myTextBox" & i
myTextBox.Width = 200
Controls.Add(myTextBox)
Controls.Add(New LiteralControl("<br>"))
Next
Controls.Add(New LiteralControl("<br>"))
Controls.Add(btnAdd)
End Sub
Protected Sub btnSubmit_Click(ByVal sender As Object, ByVal e As
EventArgs)
numBoxes = numBoxes + 1
Me.ChildControlsCreated = False
End Sub
Public Property numBoxes() As Integer
Get
Me.EnsureChildControls()
Return ViewState("numBoxes")
End Get
Set(ByVal value As Integer)
Me.EnsureChildControls()
ViewState("numBoxes") = value
End Set
End Property
End Class
Thanks in advance