TextBox.OnTextChanged(EventArgs) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Raises the TextChanged event. This allows you to handle the event directly.
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)
Parameters
Examples
The following code example demonstrates how to override the OnTextChanged method so that it always marks a custom TextBox server control as having been modified.
Important
This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.
<%@ 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
Remarks
The TextChanged event is raised when the content of the text box changes between posts to the server.
Note
A TextBox control must persist some values between posts to the server for this event to work correctly. Be sure that view state is enabled for this control.
Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.
The OnTextChanged method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inheritors
When overriding OnTextChanged(EventArgs) in a derived class, be sure to call the base class's OnTextChanged(EventArgs) method so that registered delegates receive the event.