当前位置: 首页 > wzjs >正文

简单大气的网站企业数据

简单大气的网站,企业数据,设计一个logo需要多少钱,公众号版网站建设WinForm ListBox 详解与案例 一、核心概念 ‌ListBox‌ 是 Windows 窗体中用于展示可滚动列表项的控件,支持单选或多选操作,适用于需要用户从固定数据集中选择一项或多项的场景‌。 二、核心属性 属性说明‌Items‌管理列表项的集合,支持动…

WinForm ListBox 详解与案例


一、核心概念

‌ListBox‌ 是 Windows 窗体中用于展示可滚动列表项的控件,支持单选或多选操作,适用于需要用户从固定数据集中选择一项或多项的场景‌。

二、核心属性

属性说明
‌Items‌管理列表项的集合,支持动态增删(如 Add()、Remove())‌。
‌SelectedIndex‌获取或设置选中项的索引(未选中时为 -1)‌。
‌SelectedItem‌获取当前选中的项对象‌。
‌SelectionMode‌设置选择模式:Single(默认)、MultiSimple 或 MultiExtended‌。
‌Sorted‌是否按字母顺序自动排序项‌。
‌ScrollAlwaysVisible‌始终显示滚动条(即使内容未超出可视区域)‌。

三、核心方法与事件

1‌、常用方法‌

  • Items.Add()‌:添加新项‌。
listBox1.Items.Add("新项");

。‌Items.RemoveAt()‌:根据索引删除项‌

listBox1.Items.RemoveAt(0); // 删除第一项
  • ClearSelected()‌:取消所有选中项‌。

2‌、重要事件‌

‌SelectedIndexChanged‌:选中项变化时触发‌。

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) {if (listBox1.SelectedItem != null) {MessageBox.Show($"选中项:{listBox1.SelectedItem}");}
}

四、完整案例

案例1:动态增删项
‌需求‌:通过按钮动态添加和删除列表项。
‌实现代码‌:

// 添加项
private void btnAdd_Click(object sender, EventArgs e) {listBox1.Items.Add(txtInput.Text);txtInput.Clear();
}// 删除选中项
private void btnDelete_Click(object sender, EventArgs e) {if (listBox1.SelectedIndex != -1) {listBox1.Items.RemoveAt(listBox1.SelectedIndex);}
}

‌说明‌:输入框 txtInput 用于接收用户输入,删除时需检查是否有选中项‌。


案例2:多选操作与数据绑定
‌需求‌:从数据库加载数据并支持多选。
‌实现代码‌:

// 绑定数据源(示例使用List模拟数据库数据)

private void Form1_Load(object sender, EventArgs e) {List<string> data = new List<string> { "北京", "上海", "广州", "深圳" };listBox1.DataSource = data;listBox1.SelectionMode = SelectionMode.MultiExtended; // 启用扩展多选
}// 获取所有选中项
private void btnShowSelected_Click(object sender, EventArgs e) {var selectedItems = listBox1.SelectedItems.Cast<string>().ToList();MessageBox.Show($"选中城市:{string.Join(", ", selectedItems)}");
}

‌说明‌:DataSource 属性支持绑定集合数据,SelectionMode 控制多选模式‌。


案例3:排序与批量删除
‌需求‌:自动排序列表项,并批量删除符合条件的项。
‌实现代码‌

// 启用排序
listBox1.Sorted = true;// 批量删除包含“测试”的项
private void btnBatchDelete_Click(object sender, EventArgs e) {for (int i = listBox1.Items.Count - 1; i >= 0; i--) {if (listBox1.Items[i].ToString().Contains("测试")) {listBox1.Items.RemoveAt(i); // 倒序删除避免索引错位}}
}

‌说明‌:倒序遍历避免因删除导致索引变化‌。


五、注意事项

‌性能优化‌:批量操作时使用 BeginUpdate() 和 EndUpdate() 减少界面刷新次数‌。

listBox1.BeginUpdate();
for (int i = 0; i < 1000; i++) {listBox1.Items.Add($"Item {i}");
}
listBox1.EndUpdate();

‌索引管理‌:删除多项时需倒序操作,避免索引越界‌。


总结

ListBox 是 WinForm 中灵活且功能丰富的列表控件,通过合理使用 Items 集合、SelectionMode 及事件机制,可实现动态数据管理、多选交互等复杂场景。开发时需注意性能优化和索引逻辑,避免常见错误‌

http://www.dtcms.com/wzjs/561247.html

相关文章:

  • 设计师分享网站wordpress登录插件
  • 广告艺术设计seo教程有什么
  • 服装品牌网站建设百度关键字优化
  • 北滘 网站建设dw做的手机端网站
  • 喀什做网站wordpress不显示某个栏目
  • 建设厅网站关于建筑资质合并宁波网络建站模板
  • 黄山公司做网站网站大全app下载
  • 东莞网站优化关键词推广西安网站建设xazxcy
  • 秦皇岛专业做网站苏州seo公司 翼好
  • 网站侧栏软件排行榜怎么做的互联网公司网站源码
  • 如何在服务器上发布网站喀什建设网站
  • 外贸网站优化wordpress模版哪个好
  • 网站开发预算多少PHP网站开发如何建立vip
  • 网站的优化推广方案注册公司后不营业有什么后果
  • 在重庆找做网站的技术人员windows server 2008 wordpress
  • 苏州模板网站建站建设银行培训网站
  • 怎么知道网站是什么语言做的佛山网站建设 奇锐科技
  • 建设银行园湖路支行网站网站备案提示
  • 做图片视频的网站装饰公司名称
  • 室内设计网站大全网站wordpress 自动采集
  • 做网站类网站费用营销型网站如何建设
  • 什么是a站示范高校建设网站
  • 网站怎么设置支付网站建设 目的
  • 网站建设的公司业务网站制作现状解决方案
  • 江苏省建设档案网站无锡网站制作有哪些
  • 阿里建站系统做网站仓库报表系统
  • 芜湖先锋网站两学一做企业网站托管一年多少钱
  • 手机微信一体网站建设成安企业做网站推广
  • 南昌的网站建设公司今天重大新闻头条新闻
  • 做php网站阿里云服务器网站建设公司的市场开发方案