Property

Property

am 20.12.2007 01:57:12 von Shapper

Hello,

I created a custom control as follows:

Public Class Field
Inherits Control
Implements INamingContainer

Protected Overrides Sub CreateChildControls()
MyBase.Controls.Add(tbInput)
MyBase.CreateChildControls()
Me.ChildControlsCreated = True
End Sub

' Value
Public Property Value() As String
Get
Return ViewState("Value")
End Get
Set(ByVal value As String)
ViewState("Value") = value
End Set
End Property ' Value

Private Sub tbInput_Init(ByVal sender As Object, ByVal e As
EventArgs) Handles tbInput.Init
tbInput.Text = Me.Value
End Sub

End Class

I added this control to a web page in Page_Init event.
In the control Init event I defined its value as "Initial Value"

I then added a button to a page:

Private Sub bSubmit_Click(ByVal sender As Object, ByVal e As
EventArgs) Handles bSubmit.Click
Response.Write(MyField.Value.ToString)
End Sub

When I click this button the value displayed is always "Initial Value"
even when it was changed.
And after the PostBack the value in the text box changes again Initial
Value.

Any idea what I am doing wrong?

Thanks,
Miguel

Re: Property

am 21.12.2007 20:33:14 von Shapper

On Dec 20, 12:57 am, shapper wrote:
> Hello,
>
> I created a custom control as follows:
>
> Public Class Field
> Inherits Control
> Implements INamingContainer
>
> Protected Overrides Sub CreateChildControls()
> MyBase.Controls.Add(tbInput)
> MyBase.CreateChildControls()
> Me.ChildControlsCreated = True
> End Sub
>
> ' Value
> PublicPropertyValue() As String
> Get
> Return ViewState("Value")
> End Get
> Set(ByVal value As String)
> ViewState("Value") = value
> End Set
> EndProperty' Value
>
> Private Sub tbInput_Init(ByVal sender As Object, ByVal e As
> EventArgs) Handles tbInput.Init
> tbInput.Text = Me.Value
> End Sub
>
> End Class
>
> I added this control to a web page in Page_Init event.
> In the control Init event I defined its value as "Initial Value"
>
> I then added a button to a page:
>
> Private Sub bSubmit_Click(ByVal sender As Object, ByVal e As
> EventArgs) Handles bSubmit.Click
> Response.Write(MyField.Value.ToString)
> End Sub
>
> When I click this button the value displayed is always "Initial Value"
> even when it was changed.
> And after the PostBack the value in the text box changes again Initial
> Value.
>
> Any idea what I am doing wrong?
>
> Thanks,Miguel

Anyone?

Thanks,
Miguel