web-dev-qa-db-fra.com

Impossible d'obtenir le texte d'un DropDownList dans le code - peut obtenir une valeur mais pas du texte

J'utilise ASP.NET 3.5

J'ai une liste déroulante appelée lstCountry avec un élément comme celui-ci:

<asp:ListItem Value="United States">Canada</asp:ListItem> 

Ceci affichera Canada mais dans le code, la valeur sera "États-Unis". Comment puis-je récupérer la valeur "Canada" également dans mon code?

J'ai essayé toutes ces solutions et toutes rentrent aux États-Unis.

lstCountry.Text
lstCountry.SelectedValue
lstCountry.SelectedItem.Text

Ma liste déroulante:

 <asp:DropDownList ID="lstCountry" runat="server" Width="200px">
              <asp:ListItem>Please Select</asp:ListItem>
  <asp:ListItem>United States</asp:ListItem>
  <asp:ListItem Value="United States">Canada</asp:ListItem>
 </asp:DropDownList>

Comment j'ai lu la valeur en code:

    Dim country As String
    country = lstCountry.SelectedItem.Text
12
Etienne

ajouter une liste en utilisant 

<asp:ListItem Value="United States" Text="Canada"></asp:ListItem>

et ensuite essayer 

DropDownList1.SelectedItem.Text

J'ai trouvé ton erreur.

<asp:ListItem>United States</asp:ListItem> 

changez ceci en

<asp:ListItem>United States1</asp:ListItem> 

Ensuite, vous aurez la valeur réelle.

Quel était le problème, il y a deux mêmes valeurs dans votre liste déroulante, lorsque la publication de page, il prend la première valeur comme sélectionnée et donne le résultat en conséquence. si vous avez remarqué quand après publication United States Value est sélectionné

30
Muhammad Akhtar

AppendDataBoundItems="true" doit être défini.

3
john

essayer

lstCountry.SelectedItem.Text
0
Arsen Mkrtchyan

Tu peux essayer 

lstCountry.SelectedItem.Text
0
Himadri

avait le même problème et vient de le résoudre, j'ai utilisé string [Nom de la variable] = dropdownlist1.SelectedItem.Text;

0
Dameon

Qu'en est-il de

lstCountry.Items[lstCountry.SelectedIndex].Text;
0
rahul

Regardez ici, cela a une page de preuve de concept et une démo que vous pouvez utiliser pour obtenir n'importe quoi dans le menu déroulant: asp: Page du didacticiel de contrôle DropDownList

0
Tom