列表框的属性
items:集合属性
SelectionMode 设置单选,多选,默认时单选,One,MultiSimple简单多选,MultiExtended跳选Shift连选,Ctrl跳选
列表框操作:
listbox.items.Add(Object item)添加选项,一次添加一个
listbox.items.AddRange(Object[] items)一次可以添加多个选项
listbox.items.Remove(Object value)移除指定对象,根据文本值
listbox.items.RemoveAt(Object Index)移除集合中指定索引的项
listbox.items.Insert(int Index, Object item)将一个项插入列表框指定索引处
listbox.items.Clear()清除列表框所有项
listbox.items[int Index]获取或设置集合中指定索引处的项
listbox.items.Count 获取集合中的项数
listbox.SelectedItems:获取当前选定项的集合
listbox.SelectedItems.Count 获取被选中项目的数目
listbox.SelectedItems[i]根据指定索引获取被选择的项,即获取被选择的i项
listbox.SelectedItem:属性,获取或设置当前被选择的1项
listbox.SelectedIndex:属性 获取或设置选中项的索引
namespace 列表框实例
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
//初始化给列表框增加选项
string[] musicNames = { "狂狼", "月亮之上", "AAA", "BBB" };
//添加选项,数组的形式
lbShow.Items.AddRange(musicNames);
}
private void lbShow_Click(object sender, EventArgs e)
{
//选中项显示在文本框中
//把文本框置空
this.textSelected.Text = "";
//循环列表框被选中的项数
for (int i = 0; i < lbShow.SelectedItems.Count; i++)
{
//文本框的内容=文本框现有内容+循环遍历的被选中的项,但是会导致每次单机第一个选项时前面会有一个逗号
this.textSelected.Text = this.textSelected.Text + "," + this.lbShow.SelectedItems[i];
}
//把第一个选项前面的逗号处理掉
this.textSelected.Text = this.textSelected.Text.Substring(1);
}
private void btnAdd_Click(object sender, EventArgs e)
{
//添加选项
//循环列表框集合的项数
for (int i = 0; i < lbShow.Items.Count; i++)
{
//如果文本框的内容=列表框中某项的值(内容)
if (textInput.Text == lbShow.Items[i].ToString())
{
//弹出信息框
MessageBox.Show("有相同数据,请换一个试试");
//文本框置空
textInput.Text = string.Empty;
}
}
//如果以上条件都不成立,执行下面语句,列表框添加项
lbShow.Items.Add(textInput.Text);
//文本框置空
textInput.Text = string.Empty;
}
private void btnDel_Click(object sender, EventArgs e)
{
//删除选中项
//如果列表框被选中项的项数小于等于零
if (lbShow.SelectedItems.Count <= 0)
{
//弹出信息框
MessageBox.Show("没有选择要删除的音乐");
//跳出,不执行下面语句
return;
}
//循环列表框集合的项数
for (int i = 0; i < this.lbShow.Items.Count; i++)
{
//列表框移除 列表框被选中项
this.lbShow.Items.Remove(this.lbShow.SelectedItem);
}
//文本框置空
textSelected.Text = string.Empty;
}
private void btnClear_Click(object sender, EventArgs e)
{
//清除列表框
this.lbShow.Items.Clear();
}
private void btnExit_Click(object sender, EventArgs e)
{
//退出
Application.Exit();
}
}
}