C# 如何将EventHandler转发到父控件?

C# 如何将EventHandler转发到父控件?,c#,asp.net,event-handling,C#,Asp.net,Event Handling,我有一个包含文本框的用户控件。用户控件本身包含在另一个用户控件(父控件)中 当文本被更改(OnTextChanged事件)时,我需要一种方法来告诉父用户控件 因此,我会有一些关于: <uc1:MyUserControl OnChanged="DoSomething" runat="server" ID="MyUserControl1"> 当textbox的OnTextBoxChanged事件激发时,OnChanged eventhandler将激发 有什么想法或线索吗 谢谢 假

我有一个包含文本框的用户控件。用户控件本身包含在另一个用户控件(父控件)中

当文本被更改(OnTextChanged事件)时,我需要一种方法来告诉父用户控件

因此,我会有一些关于:

<uc1:MyUserControl OnChanged="DoSomething" runat="server" ID="MyUserControl1">

当textbox的OnTextBoxChanged事件激发时,OnChanged eventhandler将激发

有什么想法或线索吗


谢谢

假设有一个名为ControlTextBox的文本框,我的web用户控件后面有以下代码:

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"/>


然后您上面给出的代码被正确触发。

假设有一个名为ControlTextBox的文本框,我的web用户控件后面有以下代码:

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"/>

然后正确地触发上面给出的代码