TextBox.OnTextChanged(EventArgs) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Eleva o TextChanged evento. Isto permite-lhe gerir o evento diretamente.
protected:
virtual void OnTextChanged(EventArgs ^ e);
protected virtual void OnTextChanged(EventArgs e);
abstract member OnTextChanged : EventArgs -> unit
override this.OnTextChanged : EventArgs -> unit
Protected Overridable Sub OnTextChanged (e As EventArgs)
Parâmetros
Exemplos
O exemplo de código seguinte demonstra como sobrescrever o OnTextChanged método para que ele marque sempre um controlo personalizado TextBox do servidor como tendo sido modificado.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do utilizador, o que constitui uma potencial ameaça à segurança. Por defeito, as páginas Web do ASP.NET validam que a entrada do utilizador não inclui elementos de script ou HTML. Para mais informações, consulte Visão Geral dos Exploits de Scripts.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom TextBox - OnTextChanged - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom TextBox - OnTextChanged - C# Example</h3>
<aspSample:CustomTextBoxOnTextChanged
id="TextBox1"
autopostback=true
runat="server">Hello World!
</aspSample:CustomTextBoxOnTextChanged>
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom TextBox - OnTextChanged - VB.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom TextBox - OnTextChanged - VB.NET Example</h3>
<aspSample:CustomTextBoxOnTextChanged id="TextBox1" autopostback=true
runat="server">Hello World!</aspSample:CustomTextBoxOnTextChanged>
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet.CS.Controls
{
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomTextBoxOnTextChanged : System.Web.UI.WebControls.TextBox
{
private bool isDirty = false;
protected override void OnTextChanged(System.EventArgs e)
{
// Call the base OnTextChanged method.
base.OnTextChanged(e);
// Change the dirty flag to True.
isDirty = true;
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomTextBoxOnTextChanged
Inherits System.Web.UI.WebControls.TextBox
Private isDirty As Boolean = False
Protected Overrides Sub OnTextChanged(ByVal e As System.EventArgs)
' Call the base OnTextChanged method.
MyBase.OnTextChanged(e)
' Change the dirty flag to True.
isDirty = True
End Sub
End Class
End Namespace
Observações
O TextChanged evento é ativado quando o conteúdo da caixa de texto muda entre publicações para o servidor.
Note
Um TextBox controlo deve persistir alguns valores entre publicações no servidor para que este evento funcione corretamente. Certifique-se de que o estado de visualização está ativado para este controlo.
Levantar um evento invoca o gestor de eventos através de um delegado. Para mais informações, consulte Manuseio e Levantamento de Eventos.
O OnTextChanged método também permite que classes derivadas tratem do evento sem anexar um delegado. Esta é a técnica preferida para lidar com o evento numa classe derivada.
Notas para Herdeiros
Ao substituir OnTextChanged(EventArgs) uma classe derivada, certifique-se de chamar o método da OnTextChanged(EventArgs) classe base para que os delegados registados recebam o evento.