WebControl.Enabled Propriedade
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.
Obtém ou define um valor que indica se o controle do servidor Web está habilitado.
public:
virtual property bool Enabled { bool get(); void set(bool value); };
[System.ComponentModel.Bindable(true)]
public virtual bool Enabled { get; set; }
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public virtual bool Enabled { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.Enabled : bool with get, set
[<System.ComponentModel.Bindable(true)>]
[<System.Web.UI.Themeable(false)>]
member this.Enabled : bool with get, set
Public Overridable Property Enabled As Boolean
Valor da propriedade
true
se o controle estiver habilitado; caso contrário, false
. O padrão é true
.
- Atributos
Exemplos
O exemplo a seguir ilustra como habilitar e desabilitar um TextBox controle, herdado da WebControl classe base, definindo sua Enabled propriedade programaticamente.
Observação
O exemplo de código a seguir usa o modelo de código de arquivo único e pode não funcionar corretamente se copiado diretamente em um arquivo code-behind. Este exemplo de código deve ser copiado para um arquivo de texto vazio que tenha uma extensão de .aspx. Para obter mais informações sobre o modelo de código do Web Forms, consulte ASP.NET Web Forms Page Code Model.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos html ou script. Para obter mais informações, consulte Visão geral de explorações de script.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void SubmitBtn1_Click(object sender, EventArgs e)
{
TextBox1.Enabled = (!TextBox1.Enabled);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
<title>Enabled Property Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h3>Enabled Property of a Web Control</h3>
<p>
<asp:TextBox id="TextBox1" BackColor="LightBlue"
runat="server">Light Blue</asp:TextBox>
</p>
<p>
<asp:TextBox id="TextBox2" BackColor="LightGreen"
runat="server">Light Green</asp:TextBox>
</p>
<asp:Button id="SubmitBtn1" runat="server"
Text="Click to disable or enable the light blue text box"
OnClick="SubmitBtn1_Click" />
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub SubmitBtn1_Click(ByVal sender As Object, ByVal e As EventArgs)
TextBox1.Enabled = Not (TextBox1.Enabled)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head2" runat="server">
<title>Enabled Property Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h3>Enabled Property of a Web Control</h3>
<p>
<asp:TextBox id="TextBox1" BackColor="LightBlue"
runat="server">Light Blue</asp:TextBox>
</p>
<p>
<asp:TextBox id="TextBox2" BackColor="LightGreen"
runat="server">Light Green</asp:TextBox>
</p>
<asp:Button id="SubmitBtn1" runat="server"
Text="Click to disable or enable the light blue text box"
OnClick="SubmitBtn1_Click" />
</div>
</form>
</body>
</html>
Comentários
Quando a Enabled propriedade de um controle é definida como false
, o controle normalmente aparece esmaecido. Se o controle for um elemento de entrada, o navegador impedirá que o usuário clique ou digite nele. Os elementos HTML renderizados para um controle de servidor são marcados como desabilitados definindo seu disabled
atributo ou seu atributo CSS class
. Para obter mais informações, consulte SupportsDisabledAttribute e ControlRenderingCompatibilityVersion.
Essa propriedade propaga para baixo a hierarquia de controle. Se você desabilitar um controle de contêiner, os controles filho dentro desse contêiner também serão desabilitados. Para obter mais informações, consulte a propriedade IsEnabled.
Observação
Em um controle composto personalizado, esse comportamento de herança não se aplica a controles que ainda não criaram seus controles filho. Você deve definir o estado habilitado dos controles filho quando eles são criados ou substituir a Enabled propriedade para chamar o EnsureChildControls método .
Observação
Desabilitar um controle impede apenas a interação com o controle pelo usuário por meio da interface do usuário do navegador. É possível que um usuário crie uma solicitação que envie um postback que é processado pela página mesmo se os controles na página estiverem desabilitados. Antes de processar uma solicitação de postback, verifique se o controle está habilitado e visível.
Nem todos os controles dão suporte a essa propriedade. Consulte os controles individuais para obter detalhes.
Essa propriedade não pode ser definida por temas ou temas de folha de estilos. Para obter mais informações, consulte ThemeableAttribute e ASP.NET Temas e Capas.