获取多选列表框的选定值

时间:2012-04-17 20:16:40

标签: c# list select

我在多选模式下有一个列表框,它是数据绑定的数据库中的15个值。我有这段代码来显示列表框中选中的每个项目的选定值:

        foreach (var list in list_box.SelectedItems)
        {             
            MessageBox.Show(list_box.SelectedValue.ToString());
        }

不幸的是,显示正确数量的消息框,但它们只显示已选择的列表中第一个项目的选定值。

有人可以帮我解决这个问题吗?我一直在网上搜索,但我找不到一个正常工作的例子!

6 个答案:

答案 0 :(得分:5)

我回到这个问题并通过这样做解决了它:

  foreach(int blah in multilistbox.SelectedIndices){

  MessageBox.Show(blah.ToString());

  }

感谢您的帮助!

答案 1 :(得分:1)

您应该从列表变量中提取值,而不是从list_box对象中提取值。

答案 2 :(得分:1)

您已经循环选定的项目。为什么不打电话

MessageBox.Show(list.ToString()); 

答案 3 :(得分:1)

我认为您的代码中可能存在逻辑错误。您正在循环浏览SelectedItems,但您的MessageBox仍在使用list_box来显示值。怎么样?

foreach (var list in list_box.SelectedItems)         
{                          
MessageBox.Show(list.ToString());         
} 

答案 4 :(得分:1)

foreach (var list in list_box.SelectedItems)
{             
    MessageBox.Show(list.ToString());
}

答案 5 :(得分:1)

可以这样做。

Int[] AllselectedIndex=ListBox1.GetSelectedIndices();