Предполагая текстовое поле с именем ControlTextBox, у меня есть следующий код за моим веб-пользовательским элементом управления:
public partial class MyUserControl : System.Web.UI.UserControl
{
public event EventHandler Changed;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void ControlTextBox_Changed(object sender, EventArgs e)
{
OnChanged();
}
protected virtual void OnChanged()
{
if (Changed != null)
Changed(this, EventArgs.Empty);
}
}
и следующее в файле ascx:
<%@ Control Language="C#" AutoEventWireup="true"
CodeFile="MyUserControl.ascx.cs" Inherits="MyUserControl" %>
<asp:TextBox runat="server" ID="ControlTextBox"
OnTextChanged="ControlTextBox_Changed" AutoPostBack="true"/>
Тогда приведенный выше код будет запущен правильно.