ASP.NET 复合控件向父窗体引发事件

发布于 2024-07-26 01:12:00 字数 200 浏览 2 评论 0原文

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

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

我是否需要创建自己的委托并在内部下拉列表项更改时引发它?

Say I have a composite control in ASP.NET (C#) which includes a drop down list. I need to be able to bubble the event back to the parent form so that other code can be executed based on its SelectedItem.

How do I expose the OnSelectedItemChanged event to the application?

Do I need to create my own delegate and raise it when the internal drop down list item is changed?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

摇划花蜜的午后 2024-08-02 01:12:00

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

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

I've created control which contains a button and I'm using same approach; create a delegate and raise events on button's click.

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);
}
装纯掩盖桑 2024-08-02 01:12:00

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

Correct... You would want to create your own event for SelectedItem and write an event handler for the dropdown list's SelectedItem and inside the method raise your event.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文