从后面的代码中删除事件处理程序

本文关键字:删除 事件处理 程序 代码 | 更新日期: 2023-09-27 18:05:08

我有一个像这样的asp.net下拉列表

<asp:DropDownList ID="ddLevel" runat="server" Width="95%" AutoPostBack="True" OnSelectedIndexChanged="ddYear_SelectedIndexChanged">

在某些情况下,我试图删除OnSelectedIndexChanged事件处理程序。我试着

ddLevel.SelectedIndexChanged -=ddYear_SelectedIndexChanged;

它没有工作。然后,我尝试了

ddLevel.SelectedIndexChanged -=new EventHandler(ddYear_SelectedIndexChanged);

但是他们两个都不工作。当我检查页面的来源时,我仍然可以看到onchange事件。

我检查了这两个链接link1和link2。我不明白我做错了什么。我想知道是否有其他方法来做这件事。原因是我在Page_Load事件中这样做吗?

从后面的代码中删除事件处理程序

下面应该取消订阅事件,确保在page_load事件的那个点之后不再执行事件订阅。

ddLevel.SelectedIndexChanged -=ddYear_SelectedIndexChanged;