我在gridview_rowdatabound事件中动态填充的gridview的每个列标题中的下拉列表。它用于过滤功能。
我能够获得下拉列表和项目列表,但是选择索引已更改的方法未被解雇
type
我还放置了一个新的事件处理程序方法,但是这个事件没有被触发。
typeof(TypeInfo)
关于如何在ddl更改事件上获得此方法的任何建议?
答案 0 :(得分:0)
问题是您在SelectedIndexChanged
事件中分配了RowDataBound
事件。
因为它只在页面加载时调用,而不是在PostBack上调用(如果你将数据绑定包装在if (!IsPostBack) { }
里面),PostBack上的绑定就会丢失,并且不会执行该方法。
因此,您必须确保在每个页面加载时添加处理程序。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = mySource;
GridView1.DataBind();
}
DropDownList ddl = GridView1.HeaderRow.FindControl("DropDownList1") as DropDownList;
ddl.AutoPostBack = true;
ddl.SelectedIndexChanged += new EventHandler(ddl_OnSelectedIndexChanged);
}