I dynamically populate a dropdownlist of all 50 states from an ArrayList on PageLoad. When the user selects the SUBMIT button (btnSubmit_Click event), the SelectedIndex property of the dropdownlist control is always 0 despite what selection the user selects.
Added more code to help troubleshooting. Getting a -1 both from the session variable (bbb) and from the ddlState.selectedindex (bbb).
HTML code in form:
<asp:DropDownList ID="ddlState" runat="server" AutoPostBack="True"
onselectedindexchanged="ddlState_SelectedIndexChanged" >
</asp:DropDownList>
Code Behind:
protected void Page_Load(object sender, EventArgs e)
{
//------------------------------------------------
// Populates state dropdownlists
//------------------------------------------------
if (!IsPostBack)
{
GetAllStatesForDdl(ddlDLState);
GetAllStatesForDdl(ddlOldState);
GetStatesForDdl(ddlState);
}
}
private void GetAllStatesForDdl(DropDownList ddlStateList)
{
AppInputFormProcessor getStates = new AppInputFormProcessor();
ArrayList States = new ArrayList();
States = getStates.GetAllStates();
ddlStateList.DataSource = States;
ddlStateList.DataBind();
}
private void GetStatesForDdl(DropDownList ddlStateList)
{
AppInputFormProcessor getStates = new AppInputFormProcessor();
ArrayList States = new ArrayList();
States = getStates.GetStates();
ddlStateList.DataSource = States;
ddlStateList.DataBind();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
int aaa = ddlState.SelectedIndex;
int bbb = Convert.ToInt32(Session["ddlState"]);
}
protected void ddlState_SelectedIndexChanged(object sender, EventArgs e)
{
Session["ddlState"] = ddlState.SelectedIndex;
}