从父控件绑定SelectIndexChanged事件

时间:2015-07-01 10:19:50

标签: c# asp.net

我有一个自定义UserControl(ConditionPanel),它包含多个其他类型为ConditionControl的自定义用户控件。这些ConditionControls是在运行时动态添加的。我在每个conditioncontrol中都有一个下拉列表,当我在运行时添加一个条件控件时,我想绑定它的SelectedIndexChanged事件。

我保留已经添加到会话变量中的所有自定义控件的信息,以便我可以在每次回发后再次添加它们。

问题在于,当我更改下拉列表的索引时,整个页面的回发首先发生,触发它的控件不再存在,因为另一个将在其中创建回发。所以我的IndexChangedEvent并没有以这种方式触发。我尝试在OnInit事件中绑定它,但这也不起作用。

FieldDD.SelectedIndexChanged += new EventHandler(FieldDD_SelectedIndexChanged1);

知道如何让这项工作成功吗?

1 个答案:

答案 0 :(得分:0)

在运行时添加对象的问题是,如果您没有自己分配ID,则会在回发时获得自动ID。通过设置ID,您可以确保正确调用事件。