StateBag Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Gerencia o estado de exibição de controles de servidor ASP.NET, incluindo páginas. Essa classe não pode ser herdada.
public ref class StateBag sealed : System::Collections::IDictionary, System::Web::UI::IStateManager
public sealed class StateBag : System.Collections.IDictionary, System.Web.UI.IStateManager
type StateBag = class
interface IStateManager
interface IDictionary
interface ICollection
interface IEnumerable
Public NotInheritable Class StateBag
Implements IDictionary, IStateManager
- Herança
-
StateBag
- Implementações
Exemplos
O exemplo de código a seguir demonstra um controle composto Label
que tem Text
propriedades e FontSize
. Essas propriedades são salvas e recuperadas do estado de exibição quando o Control.Render método é chamado no controle .
// This control renders values stored in view state for Text and FontSize properties.
using System;
using System.Web;
using System.Web.UI;
namespace ViewStateControlSamples
{
public class CustomLabel : Control
{
private const int defaultFontSize = 3;
// Add property values to view state with set;
// retrieve them from view state with get.
public String Text
{
get
{
object o = ViewState["Text"];
return (o == null)? String.Empty : (string)o;
}
set
{
ViewState["Text"] = value;
}
}
public int FontSize
{
get
{
object o = ViewState["FontSize"];
return (o == null) ? defaultFontSize : (int)o;
}
set
{
ViewState["FontSize"] = value;
}
}
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name = "FullTrust")]
protected override void Render(HtmlTextWriter output)
{
output.Write("<font size=" + this.FontSize.ToString() + ">" + this.Text + "</font>");
}
}
}
' This control renders values stored in view state for Text and FontSize properties.
Imports System.Web
Imports System.Web.UI
Namespace ViewStateControlSamples
Public Class CustomLabel : Inherits Control
Private Const defaultFontSize As Integer = 3
' Add property values to view state with set;
' retrieve them from view state with get.
Public Property [Text]() As String
Get
Dim o As Object = ViewState("Text")
If (IsNothing(o)) Then
Return String.Empty
Else
Return CStr(o)
End If
End Get
Set(ByVal value As String)
ViewState("Text") = value
End Set
End Property
Public Property FontSize() As Integer
Get
Dim o As Object = ViewState("FontSize")
If (IsNothing(o)) Then
Return defaultFontSize
Else
Return CInt(ViewState("FontSize"))
End If
End Get
Set(ByVal value As Integer)
ViewState("FontSize") = value
End Set
End Property
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
Protected Overrides Sub Render(ByVal Output As HtmlTextWriter)
Output.Write("<font size=" & Me.FontSize & ">" & Me.Text & "</font>")
End Sub
End Class
End Namespace
Comentários
O estado de exibição de uma página ou controle é os valores de propriedade cumulativa, ou exibição, dessa página ou controle. Você pode acessar essa classe por meio da Control.ViewState propriedade . Os controles também podem armazenar informações de estado essenciais no estado de controle, mas essas informações não são armazenadas como um StateBag objeto.
Essa classe é o mecanismo de armazenamento primário para todos os controles html e servidor Web. Ele armazena pares de atributo/valor como cadeias de caracteres associadas ao controle . Ele controla as alterações nesses atributos somente depois que o OnInit método é executado para uma solicitação de página e salva as alterações no estado de exibição da página ou do controle.
Essa classe implementa um dicionário e você pode adicionar itens a ele ou remover itens dele como faria com qualquer objeto de dicionário. Para obter mais informações sobre coletas de dados, como dicionários, consulte Coleções e estruturas de dados.
Construtores
StateBag() |
Inicializa uma nova instância da classe StateBag. Esse é o construtor sem parâmetros para essa classe. |
StateBag(Boolean) |
Inicializa uma nova instância da classe StateBag que permite que os valores de estado armazenados diferenciem maiúsculas de minúsculas. |
Propriedades
Count | |
Item[String] |
Obtém ou define o valor de um item armazenado no objeto StateBag. |
Keys |
Obtém uma coleção de chaves que representa os itens no objeto StateBag. |
Values |
Obtém uma coleção dos valores de estado de exibição armazenados no objeto StateBag. |
Métodos
Add(String, Object) |
Adiciona um novo objeto StateItem ao objeto StateBag. Se o item já existe no objeto StateBag, esse método atualizará o valor do item. |
Clear() |
Remove todos os itens do objeto StateBag atual. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetEnumerator() |
Retorna um enumerador que itera em todos os pares chave/valor dos objetos StateItem armazenados no objeto StateBag. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsItemDirty(String) |
Verifica um objeto StateItem armazenado no objeto StateBag a para avaliar se ele foi modificado desde a chamada para TrackViewState(). |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
Remove(String) |
Remove o par chave/valor especificado do objeto StateBag. |
SetDirty(Boolean) |
Define o estado do objeto StateBag, bem como a propriedade Dirty de cada um dos objetos StateItem contidos nela. |
SetItemDirty(String, Boolean) |
Define a propriedade Dirty para o objeto StateItem especificado no objeto StateBag. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
ICollection.CopyTo(Array, Int32) |
Para obter uma descrição desse membro, confira CopyTo(Array, Int32). |
ICollection.IsSynchronized |
Para obter uma descrição desse membro, confira IsSynchronized. |
ICollection.SyncRoot |
Para obter uma descrição desse membro, confira SyncRoot. |
IDictionary.Add(Object, Object) |
Para obter uma descrição desse membro, confira Add(Object, Object). |
IDictionary.Contains(Object) |
Para obter uma descrição desse membro, confira Contains(Object). |
IDictionary.IsFixedSize |
Para obter uma descrição desse membro, confira IsFixedSize. |
IDictionary.IsReadOnly |
Para obter uma descrição desse membro, confira IsReadOnly. |
IDictionary.Item[Object] |
Para obter uma descrição desse membro, confira Item[Object]. |
IDictionary.Remove(Object) |
Para obter uma descrição desse membro, confira Remove(Object). |
IEnumerable.GetEnumerator() |
Para obter uma descrição desse membro, confira GetEnumerator(). |
IStateManager.IsTrackingViewState |
Obtém um valor que indica se as alterações de estado estão sendo controladas. |
IStateManager.LoadViewState(Object) |
Restaura o estado de exibição salvo anteriormente do objeto StateBag. |
IStateManager.SaveViewState() |
Salva as alterações no objeto StateBag desde a hora em que a página foi postada novamente no servidor. |
IStateManager.TrackViewState() |
Faz com que o objeto StateBag controle as alterações em seu estado, para que elas sejam mantidas em todas as solicitações. |
Métodos de Extensão
Cast<TResult>(IEnumerable) |
Converte os elementos de um IEnumerable para o tipo especificado. |
OfType<TResult>(IEnumerable) |
Filtra os elementos de um IEnumerable com base em um tipo especificado. |
AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |