常⽤属性
说明Items 
指列表中所有的条⽬集合,是⼀个数组集合。可以通过该属性,对列表进⾏增添、移除或获取列表内容MultiColumn
⽤来设置或获取⼀个值(bool 值),表⽰是否允许多列显⽰,true 表⽰多列,false 表⽰单列,默认为false 。CoumnWidth ⽤来获取列表当前列的宽度或设置列表当前列的宽度
SelectionMode 设置列表条⽬的选择⽅法。
SelectionMode.None 表⽰不允许选中
SelectionMode.One  表⽰只允许⽤户选择⼀项
SelectionMode.MultiExtended  表⽰允许选择多项,但选中的条⽬必定相连(相邻)
SelectionMode.MultiSimple
表⽰允许选择多项,可以任意选中多个条⽬。如下图
SelectedIndex *获取选中项的索引
sortedlist未选中任何项时,返回值为 1
单选时,属性值即为选中项的索引
多选时,表⽰第⼀项选定项的索引,亦可使⽤SelectedIndex[i]获取其它选中项索引,亦可让某项变成选中状态。i 为选中项从0开始的序号。
SelectedIndeces
⽤来获取选中项从0开始的索引的集合,⼀般只⽤于多项。与SelectedIndex 相似,但SelectedIndeces 只有获取索引的能⼒。 SelectedItem  获取列表当前选中项。注意,获取到的是列表选中项的⽂本内容,⽽SelectedIndex 和SelectedIndeces 获取的只是选中项
索引(int)。
SelectedItems
获取选中项的集合,使⽤SelectedItems[i]来获取选中项的⽂本内容,i 为选中项集合索引。
SelectedItems 和SelectedIndex 相似,但⼀个是获取⽂本字段,⼀个是获取索引。
c#listbox 使⽤详解和常见问题解决
关于ListBox
ListBox 是WinForm 中的 列表 控件,它提供了⼀个项⽬列表(⼀组数据项),⽤户可以选择⼀个或者多个条⽬,当列表项⽬过多时,ListBox 会⾃动添加滚动条,使⽤户可以滚动查阅所有选项。ListBox 可以预先设定列表内容,也可以绑定其他控件或数据库,⾃动更新条⽬,把数据逐⼀显⽰出来。ListBox 常⽤属性
*列表索引值,是指列表中的条⽬的序号,从0开始,如0,1,2,3...  ...,当对列表进⾏增删插⼊等操作时,条⽬的排序发⽣变化,索引亦会变化。*选择项索引,是指选中的项⽬亦从0开始的序号,当对选中项进⾏增删等操作时,数⽬发⽣变化,索引亦会变化。就好像我叫痴者⼯良,按照姓名拼⾳排序,在班级的学号是66,⽽在班⾥10个姓痴的同学中,我是3号。
两者区别如下(有颜⾊背景为选中项)
和SelectedIndex相似,但⼀个是获取⽂本字段,⼀个是获取索引。
Sorted⽤来设置或获取列表是否按字母排序(bool)。
Text
ItemsCount⽤来获取当前列表条⽬的数⽬。
ListBox增加、插⼊或删除内容
这是通过使⽤Items属性进⾏操作的,在visual studio中新建窗⼝,拖⼊⼀个列表控件,控件name为lixtBox1
listBox1.Items.Add("要增加的条⽬⽂本");
//将在列表后⾯添加
listBox1.Items.Insert(i, "要增加的条⽬⽂本");
//将在索引为i的条⽬后⾯插⼊⼀条新条⽬
listBox1.Items.Remove("在此放⼊你要移除条⽬的⽂本内容");
//删除是⽤的是⽂本内容,⽽不是索引
listBox1.Items.Clear();
//清空列表所有条⽬
listBox1.ClearSelected();
//取消所有选中项,即变为未选中状态
ListBox删除多项内容
很多朋友在这⾥摔跤,vs⽼是提⽰数组超出界限。因为ListBox的删除要通过指定某项的⽂本,并且只能⼀项项的删除,⽽删除⼀项后索引⼜会发⽣变化,所以新⼿可能会很惘然。下⾯提供两种删除⽅式的代码供新⼿参考。
for (int i=listBox1.SelectedItems.Count-1;i>=0 ;i--)
{      //要从后⾯往前删除
listBox1.Items.Remove(listBox1.SelectedItems[i]);
//SelectedItems直接获取选中项的⽂本
}
//如果你是新⼿,看不懂上⾯的代码,别急,跳过这⾥,先看下⾯内容内容,后⾯会详细介绍
for (int i = listBox1.SelectedItems.Count-1; i >=0; i--)
{      //亦是从后删除
listBox1.Items.Remove(listBox1.Items[listBox1.SelectedIndices[i]]);
//先获取索引,再获取⽂本内容
}
获取集合的数量
int i = 0;
i=listBox1.Items.Count;
//获取列表所有条⽬的数量
i = listBox1.SelectedIndices.Count;
//获取选中的条⽬的数量
i = listBox1.SelectedItems.Count;
/
/获取选中的条⽬的数量
//listBox1.SelectedIndex不能获取数量!请翻阅属性表,有关键词“集合”。能够获取集合的属性,才能获取数量
获取所有选中条⽬的内容
再新建⼀个TextBox控件,name为textBox1,代码如下
textBox1.Clear();
textBox1.Text = "选中项的内容为\r\n";
for(int i=0;i<listBox1.SelectedItems.Count ;i++ )
{
textBox1.Text += +listBox1.SelectedItems[i].ToString()+"\r\n";
//逐条读取选中项的内容
}
ListBox单选或多选
点击ListBox控件,在属性⼀栏到SelectionMode属性,亦可以代码形式设定,属性说明如下
SelectionMode.None 表⽰不允许选中
SelectionMode.One  表⽰只允许⽤户选择⼀项
SelectionMode.MultiExtended  表⽰允许选择多项,但选中的条⽬必定相连(相邻),⿏标当选中⼀项后,按键盘↑↓可以选定⼀个范围的选项,但选项不能间隔选中。如下图:
SelectionMode.MultiSimple 表⽰允许选择多项,可以任意选中多个条⽬,点⼀下可以选中⼀条项⽬,重复点⼀下即取消。如下图

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。