ASP.NET C# 从代码隐藏中设置 OnSelectedIndexChanged

ASP.NET C# Set OnSelectedIndexChanged from Code Behind

我正在尝试从 Web 窗体应用程序的后台代码设置 SelectedIndexChanged。我有一个可变数量的下拉列表从数据库添加到页面上,并且需要一种方法来在每次其中一个下拉列表发生变化时触发。

我目前正在尝试:

ddlProductCause.SelectedIndexChanged += new EventHandler(ddlProductCause_Changed);
ddlProductCause.ID = "ddlProductCause_" + row["item_id"].ToString();
ddlProductCause.AutoPostBack = true;

和...

public void ddlProductCause_Changed(object sender, CommandEventArgs e)
    {
        // do stuff
    }

可是我运气不好

有什么想法吗?

事件参数可能导致这个,使用EventArgs

protected void ddlProductCause_Changed(object sender, EventArgs e){
   //to get id
   DropDownList ddl=sender as DropDownList;
   //ddl.Id <---Access property like this.
 }