2009-06-11 9 views
1

私は、テキストボックスを含むユーザーコントロールを持っています。ユーザーコントロールは、別のユーザーコントロール(親)に含まれています。EventHandlerを親コントロールに転送する方法は?

テキストが変更されると(OnTextChangedイベント)、親のユーザーコントロールに通知する方法が必要です。

だから私は、何かがのラインアロング必要があります:

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

をしてたときに、テキストボックスのOnTextBoxChangedイベントが発生onChangedイベントEventHandlerが解雇でしょう。

アイデアかヒント?

ありがとうございます! ASCXファイルで

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); 
    } 
} 

と次:

<%@ Control Language="C#" AutoEventWireup="true" 
    CodeFile="MyUserControl.ascx.cs" Inherits="MyUserControl" %> 

<asp:TextBox runat="server" ID="ControlTextBox" 
    OnTextChanged="ControlTextBox_Changed" AutoPostBack="true"/> 

その後、あなたは上記提供のコードが取得する私は自分のWebユーザーコントロールの後ろに以下のコードを持ってControlTextBoxと呼ばれるテキストボックスを想定し

答えて

関連する問題