Page.RegisterRequiresControlState Method (Control)

 

Registers a control as one whose control state must be persisted.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

Public Sub RegisterRequiresControlState (
	control As Control
)

Parameters

control
Type: System.Web.UI.Control

The control to register.

Exception Condition
ArgumentException

The control to register is null.

InvalidOperationException

The RegisterRequiresControlState method can be called only before or during the PreRender event.

Custom server controls that use control state must call the RegisterRequiresControlState method on each request because registration for control state is not carried over from request to request during a postback event. It is recommended that registration occur in the Init event.

The following code example shows a custom server control calling the RegisterRequiresControlState method.

Class Sample
  Inherits Control

  Dim currentIndex As Integer

      Protected Overrides Sub OnInit(ByVal e As EventArgs)
          Page.RegisterRequiresControlState(Me)
          currentIndex = 0
          MyBase.OnInit(e)
      End Sub

      Protected Overrides Function SaveControlState() As Object
          If currentIndex <> 0 Then
              Return CType(currentIndex, Object)
          Else
              Return Nothing
          End If
      End Function

      Protected Overrides Sub LoadControlState(ByVal state As Object)
          If (state <> Nothing) Then
              currentIndex = CType(state, Integer)
          End If
      End Sub

End Class

.NET Framework
Available since 2.0
Return to top
Show: