目录
1.添加数据:
2.删除数据:
3.清空数据:
4.选择项:
5.排序:
6.获取选中的项:
7.获取ListBox中的所有项:
8.综合示例
C#中对ListBox控件中的数据进行的操作主要包括添加、删除、清空、选择、排序等。
1.添加数据:
// 添加一个字符串数组
listBox1.Items.AddRange(new string[] { "item1", "item2", "item3" });// 或者添加单个字符串
listBox1.Items.Add("item4");
2.删除数据:
// 删除选定的项
listBox1.Items.Remove(listBox1.SelectedItem);// 或者删除第n项
listBox1.Items.RemoveAt(n);
3.清空数据:
listBox1.Items.Clear();
4.选择项:
// 选择第n项
listBox1.SelectedIndex = n;// 或者选择包含特定文本的项
for (int i = 0; i < listBox1.Items.Count; i++)
{if (listBox1.Items[i].ToString() == "item4"){listBox1.SelectedIndex = i;break;}
}
5.排序:
//listBox1排序);
listBox1.Sorted = true;
6.获取选中的项:
int selectedIndex = listBox1.SelectedIndex;
7.获取ListBox中的所有项:
List<string> allItems = new List<string>();
foreach (string item in listBox1.Items)
{allItems.Add(item.ToString());
}
8.综合示例
// ListBox控件操作
using System.Diagnostics;
using System.Linq;
namespace _148_2
{public partial class Form1 : Form{private static ListBox? listBox1;private Button? button1;private static TextBox? textBox1;private Button? button2;private Button? button3;private Button? button4;public Form1(){InitializeComponent();StartPosition = FormStartPosition.CenterScreen;Load += Form1_Load;}private void Form1_Load(object? sender, EventArgs e){// // listBox1// listBox1 = new ListBox{FormattingEnabled = true,ItemHeight = 17,Location = new Point(12, 12),Name = "listBox1",Size = new Size(270, 174),TabIndex = 1};// // button1// button1 = new Button{ForeColor = SystemColors.ActiveCaptionText,TabIndex = 2,Text = "操作",UseVisualStyleBackColor = true,Location = new Point(231, 221),Name = "button1",Size = new Size(50, 23)};button1.Click += Button1_Click;// // textBox1// textBox1 = new TextBox{Location = new Point(12, 192),Name = "textBox1",Size = new Size(270, 23),TabIndex = 3};// // button2// button2 = new Button{ForeColor = SystemColors.ActiveCaptionText,TabIndex = 4,Text = "清空",UseVisualStyleBackColor = true,Location = new Point(166, 221),Name = "button2",Size = new Size(49, 23)};button2.Click += Button2_Click;// // button3// button3 = new Button{ForeColor = SystemColors.ActiveCaptionText,Location = new Point(12, 221),Name = "button3",Size = new Size(75, 23),TabIndex = 5,Text = "复制全部",UseVisualStyleBackColor = true};button3.Click += Button3_Click;// // button4// button4 = new Button{ForeColor = SystemColors.ActiveCaptionText,Location = new Point(103, 221),Name = "button4",Size = new Size(47, 23),TabIndex = 6,Text = "删除",UseVisualStyleBackColor = true};button4.Click += Button4_Click;// // Form1// AutoScaleDimensions = new SizeF(7F, 17F);AutoScaleMode = AutoScaleMode.Font;ClientSize = new Size(294, 255);Controls.Add(button4);Controls.Add(button3);Controls.Add(button2);Controls.Add(textBox1);Controls.Add(button1);Controls.Add(listBox1);ForeColor = SystemColors.ControlLightLight;Name = "Form1";Text = "ListBox操作";}private void Button1_Click(object? sender, EventArgs e){ListBoxOperations();}private static void ListBoxOperations(){// 创建一个字符串数组string[] items = ["item3", "item2", "item1"];// 添加字符串数组到ListBoxlistBox1!.Items.AddRange(items);// 添加单个字符串到ListBoxlistBox1.Items.Add("item4");//listBox1排序listBox1.Sorted = true;// 选择第2个项(索引从0开始)listBox1.SelectedIndex = 1;// 获取选中的项string selectedValue = listBox1.SelectedItem!.ToString()!;textBox1!.Text = "Selected Value: " + selectedValue;// 获取选中的项的索引int selectedIndex = listBox1.SelectedIndex;textBox1!.Text += " Selected Index: " + selectedIndex;}// 清空所有private void Button2_Click(object? sender, EventArgs e){listBox1!.Items.Clear();}// 复制并添加全部private void Button3_Click(object? sender, EventArgs e){List<string> allItems = [];foreach (string item in listBox1!.Items){allItems.Add(item.ToString());}foreach (string item in allItems){listBox1.Items.Add(item);}}// 删除选中private void Button4_Click(object? sender, EventArgs e){listBox1!.Items.Remove(listBox1.SelectedItem!);}}
}