获取列表框的选定索引(c#)

时间:2012-11-06 13:45:37

标签: c# asp.net .net webforms listbox

我有一个ListBox,其SelectionMode设置为多个。当我使用ListBox1.SelectedIndex检查所选索引时,即使单击某个项目,我总是得到-1?我希望能够在列表框中获得多个所选项目的索引。

4 个答案:

答案 0 :(得分:3)

使用GetSelectedIndices()方法。

答案 1 :(得分:2)

由于可以选择多个项目,因此您必须获取SelectedItems的集合。循环通过它们。每个项目都有索引属性。

答案 2 :(得分:1)

试试这个方法

ListBox.SelectedIndexCollection SelectedIndices { get; }

当您只允许选择一个值时,使用SelectedIndex方法。

答案 3 :(得分:0)

尝试这样的事情。您将使用此代码在一个字符串中获取所有选定的索引。

int length = this.ListBox1.Items.Count;
    StringBuilder b = new StringBuilder();
    for ( int i = 0 ; i < length; i++ )
         {
      if ( this.ListBox1.Items[ i ] != null && this.ListBox1.Items[ i ].Selected ) 
              {
        b.Append( this.ListBox1.Items[ i ].Selected );
        b.Append( "," );
          }
     }
    if ( b.Length > 0 ) 
        {
      b.Length = b.Length - 1;
    }
    return b.ToString();