Page.RegisterRequiresControlState(Control) Methode

Definition

Registriert ein Steuerelement als ein Steuerelement, dessen Steuerelementzustand beibehalten werden muss.

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

Parameter

control
Control

Das zu registrierende Steuerelement.

Ausnahmen

Das zu registrierende Steuerelement lautet null.

Die RegisterRequiresControlState(Control) Methode kann nur vor oder während des Ereignisses PreRender aufgerufen werden.

Beispiele

Das folgende Codebeispiel zeigt ein benutzerdefiniertes Serversteuerelement, das die RegisterRequiresControlState Methode aufruft.

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

Hinweise

Benutzerdefinierte Serversteuerelemente, die den Steuerelementstatus verwenden, müssen die RegisterRequiresControlState Methode für jede Anforderung aufrufen, da die Registrierung für den Kontrollstatus während eines Postbackereignisses nicht von der Anforderung an die Anforderung übertragen wird. Es wird empfohlen, dass die Init Registrierung im Ereignis erfolgt.

Gilt für:

Weitere Informationen