c# ASP.Net rempli Dynamiquement DropDownList perd index sélectionné sur le bouton soumettre

Je remplir dynamiquement un dropdownlist de tous les 50 états à partir d'une liste de tableaux sur PageLoad. Lorsque l'utilisateur sélectionne le bouton "SOUMETTRE" (btnSubmit_Click de l'événement), la propriété SelectedIndex du contrôle dropdownlist est toujours 0 en dépit de ce que la sélection de l'utilisateur sélectionne.


Ajouté plus de code pour faciliter le dépannage. L'obtention d'un -1 à la fois de la variable de session (bbb) et de la ddlState.selectedindex (bbb).

Code HTML dans le formulaire:

<asp:DropDownList ID="ddlState" runat="server" AutoPostBack="True" 
    onselectedindexchanged="ddlState_SelectedIndexChanged" >
</asp:DropDownList>

Code Derrière:

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;
}
  • vous avez besoin de re-travailler la mise en forme là - actuellement, vous avez une méthode imbriquée à l'intérieur d'un autre - il ne serait même pas compiler
  • L'utilisateur choisit l'option qui vous attend à être retournés ou est-il fait par programmation à partir de ce que fait l'utilisateur? Sont toutes les valeurs d'État visible dans la liste Déroulante lorsque l'utilisateur clique sur le bouton soumettre?
  • Est-ce que votre page ou tout contrôle dans lequel votre Déroulante de résidence ont EnableViewState="false"?
  • Je pense que nous avons besoin de plus d'informations pour obtenir une aide supplémentaire.
  • Im pas en mesure de recréer votre erreur. Il semble se rappeler le SelectedIndex sur le post de retour. Est-il un réglage spécifique vous avez défini? le seul moyen que je vois est que vous êtes le repeuplement de la dropdownlist, avant de récupérer la propriété selectedIndex
InformationsquelleAutor Susan | 2012-03-08