Control.SaveViewState Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sayfa sunucuya geri gönderildiğinden bu yana gerçekleşen tüm sunucu denetimi görünüm durumu değişikliklerini kaydeder.
protected:
virtual System::Object ^ SaveViewState();
protected virtual object SaveViewState ();
abstract member SaveViewState : unit -> obj
override this.SaveViewState : unit -> obj
Protected Overridable Function SaveViewState () As Object
Döndürülenler
Sunucu denetiminin geçerli görünüm durumunu döndürür. Denetimle ilişkilendirilmiş bir görünüm durumu yoksa, bu yöntem döndürür null
.
Örnekler
Aşağıdaki örnek, özel bir ASP.NET sunucu denetiminde yöntemini geçersiz kılar SaveViewState . Bu yöntem çağrıldığında, denetimin herhangi bir alt denetime sahip olup olmadığını ve içeren Page nesnenin bir geri göndermenin sonucu olup olmadığını belirler. Her ikisi de doğruysa, bir Web sunucusu denetiminin Label özelliğini okuyacak Custom Control Has Saved State
şekilde değiştirirText. Ardından denetimin görünüm durumunu adlı allStates
bir nesne dizisi olarak kaydeder.
protected override object SaveViewState()
{ // Change Text Property of Label when this function is invoked.
if(HasControls() && (Page.IsPostBack))
{
((Label)(Controls[0])).Text = "Custom Control Has Saved State";
}
// Save State as a cumulative array of objects.
object baseState = base.SaveViewState();
string userText = UserText;
string passwordText = PasswordText;
object[] allStates = new object[3];
allStates[0] = baseState;
allStates[1] = userText;
allStates[2] = PasswordText;
return allStates;
}
Protected Overrides Function SaveViewState() As Object
' Change Text Property of Label when this function is invoked.
If HasControls() And Page.IsPostBack Then
CType(Controls(0), Label).Text = "Custom Control Has Saved State"
End If
' Save State as a cumulative array of objects.
Dim baseState As Object = MyBase.SaveViewState()
Dim _userText As String = UserText
Dim _passwordText As String = PasswordText
Dim allStates(3) As Object
allStates(0) = baseState
allStates(1) = _userText
allStates(2) = PasswordText
Return allStates
End Function
Açıklamalar
Görünüm durumu, sunucu denetiminin özelliklerinin değerlerinin birikmesidir. Bu değerler, sınıfın bir örneği olan sunucu denetiminin ViewState özelliğine StateBag otomatik olarak yerleştirilir. Daha sonra bu özelliğin değeri, sunucu denetimi yaşam döngüsünün kaydetme durumu aşamasından sonra bir dize nesnesine kalıcı olur. Daha fazla bilgi için bkz. sayfa yaşam döngüsüne genel bakış ASP.NET.
Görünüm durumu kaydedildiğinde, bu dize nesnesi istemciye bir HTML HIDDEN
öğesinde depolanan bir değişken olarak döndürülür. Özel görünüm durumuyla özel bir sunucu denetimi yazdığınızda, görünüm durumu ve LoadViewState yöntemleriyle SaveViewState açıkça yönetilebilir. Daha fazla bilgi için bkz. ASP.NET Durum Yönetimine Genel Bakış. Özel oturum durumu sağlayıcısı uygulama hakkında bilgi için bkz. Session-State Deposu Sağlayıcısı Uygulama.