Page.RegisterRequiresControlState(Control) Page.RegisterRequiresControlState(Control) Page.RegisterRequiresControlState(Control) Method

Definizione

Registra un controllo in modo che il relativo stato del controllo debba essere mantenuto.Registers a control as one whose control state must be persisted.

public:
 void RegisterRequiresControlState(System::Web::UI::Control ^ control);
public void RegisterRequiresControlState (System.Web.UI.Control control);
member this.RegisterRequiresControlState : System.Web.UI.Control -> unit

Parametri

control
Control Control Control

Controllo da registrare.The control to register.

Eccezioni

Il controllo da registrare è null.The control to register is null.

Il metodo RegisterRequiresControlState(Control) può essere chiamato solo prima o durante l'evento PreRender.The RegisterRequiresControlState(Control) method can be called only before or during the PreRender event.

Esempi

Nell'esempio di codice seguente viene illustrato un controllo server personalizzato RegisterRequiresControlState che chiama il metodo.The following code example shows a custom server control calling the RegisterRequiresControlState method.

public class Sample : Control {
    private int currentIndex = 0;
   
    protected override void OnInit(EventArgs e) {
        Page.RegisterRequiresControlState(this);
        base.OnInit(e);
    }

    protected override object SaveControlState() {
        return currentIndex != 0 ? (object)currentIndex : null;
    }

    protected override void LoadControlState(object state) {
        if (state != null) {
            currentIndex = (int)state;
        }
    }
}
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

Commenti

I controlli server personalizzati che usano lo stato del controllo RegisterRequiresControlState devono chiamare il metodo su ogni richiesta perché la registrazione per lo stato del controllo non viene trasferita da richiesta a richiesta durante un evento postback.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. È consigliabile che la Init registrazione venga eseguita nell'evento.It is recommended that registration occur in the Init event.

Si applica a

Vedi anche