ListBox1.SelectedItem.Text дает другой текст

У меня есть список:

<asp:ListBox ID="ListBox1" runat="server" AutoPostBack="True"OnSelectedIndexChanged="ListBox1_SelectedIndexChanged">
<asp:ListItem Value="genyn">MAS Meeting</asp:ListItem>   
<asp:ListItem Value="smartyn">Smart Meeting</asp:ListItem>  
<asp:ListItem Value="genyn">Project Meeting</asp:ListItem>
</asp:ListBox>

В коде позади:

protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
 label1.Text= ListBox1.SelectedItem.Text;
}

когда я выбираю Встречу проекта в ListBox, label1 имеет текст "Встреча MAS". Но я хочу, чтобы это была встреча проекта. Это потому, что у меня одинаковое значение для первого и третьего списка?

Может кто-нибудь мне помочь? заранее спасибо

2 ответа

Решение

Вы не могли бы сделать это таким образом.

value атрибут должен быть uniqueв противном случае вы получите the first matched item от select, имею в виду asp.net List

<asp:ListItem Value="diffValue">Project Meeting</asp:ListItem>

У вас есть те же значения для MAS Meeting а также Project Meeting - это может вызвать вашу проблему. Попробуйте установить разные значения для разных элементов списка, чтобы избежать путаницы:

<asp:ListBox ID="ListBox1" runat="server" AutoPostBack="True"OnSelectedIndexChanged="ListBox1_SelectedIndexChanged">
    <asp:ListItem Value="genyn">MAS Meeting</asp:ListItem>   
    <asp:ListItem Value="smartyn">Smart Meeting</asp:ListItem>  
    <asp:ListItem Value="another_genyn">Project Meeting</asp:ListItem>
</asp:ListBox>
Другие вопросы по тегам