ListBox1.SelectedItem.Text给出其他文本

时间:2013-10-24 10:00:47

标签: c# asp.net listbox listitem selectedtext

我有一个列表框:

<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中选择Project Meeting时,label1的文本为“MAS Meeting”。但我希望它有项目会议。是因为我对第一个和第三个listitem有相同的价值吗?

任何人都可以帮助我吗? 提前致谢

2 个答案:

答案 0 :(得分:1)

MAS MeetingProject 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>

答案 1 :(得分:1)

你不可能这样做。

value属性应为unique,否则您将从the first matched item获得select,即asp.net List

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