我有两个下拉列表,第一个是ddlSubjectArea,下面是它的源代码:
<asp:DropDownList ID="ddlSubjectArea" runat="server" AutoPostBack="True" Height="20px"
OnSelectedIndexChanged="ddlSubjectArea_SelectedIndexChanged" Width="160px"
meta:resourcekey="ddlSubjectAreaResource1" class="notranslate">
</asp:DropDownList>
以下是第二个代码:
<asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:DropDownList ID="ddlCompetency1" runat="server" Width="150px">
</asp:DropDownList>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddlSubjectArea" runat="server" />
</Triggers>
</asp:UpdatePanel>
这是第一个下拉列表的selectedindexchanged事件的代码。
protected void ddlSubjectArea_SelectedIndexChanged(object sender, EventArgs e)
{
tblSubjectMasterDLL.BindSubjectOnSubjectArea(ddlSubjectName, Convert.ToInt32(ddlSubjectArea.SelectedItem.Value));
bIsMultipleCompetency = tblSubjectAreaMasterDLL.IsMultipleCompetency(Convert.ToInt32(ddlSubjectArea.SelectedValue));
MultipleCompetencySetting();
}
第二个下拉列表的可见性取决于第一个下拉列表的选定索引.selectedindexchanged事件触发一次,但之后它不会触发。我尝试每次都选择不同的值,但没有成功。我在哪里出错了?
我想提供的另一条信息是,即使页面加载事件也只被调用一次。如果我删除更新面板,一切正常。
我想再添加一条信息:如果我为页面设置EnableEventValidation = false,事情就会按预期开始工作。我也听说过不建议将EnableEventValidation设置为false。