【问题标题】:ASP.NET Composite Control raise event to parent formASP.NET 复合控件将事件引发到父窗体
【发布时间】:2010-02-14 06:36:15
【问题描述】:

假设我在 ASP.NET (C#) 中有一个复合控件,其中包括一个下拉列表。我需要能够将事件冒泡回父表单,以便可以根据其SelectedItem 执行其他代码。

如何向应用程序公开OnSelectedItemChanged 事件?

当内部下拉列表项更改时,我是否需要创建自己的委托并提升它?

【问题讨论】:

    标签: c# asp.net events composite-controls


    【解决方案1】:

    我创建了包含一个按钮的控件,并且我正在使用相同的方法;创建一个委托并在按钮单击时引发事件。

    public delegate void IndexChangeEventHandler(object sender, EventArgs e); 
    public event IndexChangeEventHandler SelectedIndexChanged =  delegate { };
    
    //this is in your composite control, handling ddl's index change event
    protected void DDL_SelectedIndexchanged(object sender, EventArgs e)
    {
        SelectedIndexChanged(this, e);
    }
    

    【讨论】:

      【解决方案2】:

      正确...您可能希望为 SelectedItem 创建自己的事件并为下拉列表的 SelectedItem 编写事件处理程序,并在方法内引发您的事件。

      【讨论】:

        猜你喜欢
        • 2016-02-01
        • 1970-01-01
        • 2013-03-09
        • 2013-02-28
        • 1970-01-01
        • 1970-01-01
        • 2011-04-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多