Page.RegisterRequiresControlState(Control) Yöntem

Tanım

Denetimi, denetim durumunun kalıcı olması gereken bir denetim olarak kaydeder.

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)

Parametreler

control
Control

Kaydedilecek denetim.

Özel durumlar

Kaydedilecek denetim şeklindedir null.

RegisterRequiresControlState(Control) yöntemi yalnızca olay öncesinde veya sırasında PreRender çağrılabilir.

Örnekler

Aşağıdaki kod örneği, yöntemini çağıran RegisterRequiresControlState özel bir sunucu denetimini gösterir.

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

Açıklamalar

Denetim durumu kaydı bir geri gönderme olayı sırasında istekten isteğe taşınmadığından, denetim durumunu kullanan özel sunucu denetimleri her istekte yöntemini çağırmalıdır RegisterRequiresControlState . Olayda Init kaydın gerçekleşmesi önerilir.

Şunlara uygulanır

Ayrıca bkz.