本文中我将和大家讨论关于在WinForm开发中给CheckedlistBox空间绑定数据源,并获取控件中选中的所有元素的显示文本(DisplayMember)和对应的实际值(ValueMember)的问题,后者将是讨论的重点。

为了更方便地说明,首先我要预设一些条件。

条件预设:

1、已定义一个DataTable对象myDataTable,并且myDataTable的字段及数据如下:

ID 分类名称(TypeName)
1 金属制品
2 通用及专用机械设备
3 纸及纸制品
4 交通运输设备
5 电气机械及器材
6 通信设备
7 计算机及其他
8 电子设备
9 仪器仪表及文化
10 办公用机械

2、WinForm状体中有一个CheckedlistBox控件,ID为:myCheckedlistBox;一个文本控件,ID为:DisplayText;两个按钮:获取已选的文本(ID:GetText),获取已选的实际值(ID:GetValue)。如下:

具体实现:

1、给CheckedlistBox控件myCheckedlistBox绑定数据源,这个方法很简单,固定程式,网上一搜一大把,就直接上代码了

  1. this.myCheckedlistBox.DataSource = myDataTable;
  2. this.myCheckedlistBox.ValueMember = "ID";
  3. this.myCheckedlistBox.DisplayMember = "TypeName";

2、获取CheckedlistBox控件myCheckedlistBox中已选中的所有元素的显示文本(DisplayMember)。

  1. /// <summary>
  2. /// 按钮(GetText)单击事件:获取获取已选的文本
  3. /// </summary>
  4. /// <param name="sender"></param>
  5. /// <param name="e"></param>
  6. private void GetText_Click(object sender, EventArgs e)
  7. {
  8. string checkedText = string.Empty;
  9. for (int i = 0; i < this.myCheckedlistBox.CheckedItems.Count; i++)
  10. {
  11. checkedText += (String.IsNullOrEmpty(checkedText) ? "" : ",") + this.myCheckedlistBox.GetItemText(this.myCheckedlistBox.Items[i]);
  12. }
  13. this.DisplayText.Text = checkedText;
  14. }

3、获取CheckedlistBox控件myCheckedlistBox中已选中的所有元素对应的实际值(ValueMember)。

  1. /// <summary>
  2. /// 按钮(GetValue)单击事件:获取已选的实际值
  3. /// </summary>
  4. /// <param name="sender"></param>
  5. /// <param name="e"></param>
  6. private void GetValue_Click(object sender, EventArgs e)
  7. {
  8. string checkedText = string.Empty;
  9. for (int i = 0; i < this.myCheckedlistBox.Items.Count; i++)
  10. {
  11. if (this.myCheckedlistBox.GetItemChecked(i))
  12. {
  13. this.myCheckedlistBox.SetSelected(i, true);
  14. checkedText += (String.IsNullOrEmpty(checkedText) ? "" : ",") + this.myCheckedlistBox.SelectedValue.ToString();
  15. }
  16. }
  17. this.DisplayText.Text = checkedText;
  18. }

本文作者:宜城小子  发于:http://blog.yotuo.net(转载请保留此信息)
首发地址:http://blog.yotuo.net/post/2010/04/Get_CheckedlistBox_ValueMember_DisplayMember.html

最新文章

  1. (转)ShardedJedisPool的使用
  2. kali安装vmware tools
  3. 一个帖子学会Android开发四大组件
  4. 破解LR时,解决loadrunner 破解错误:license security violation.Operation is not allowed
  5. angular.js form
  6. datawindow.net 动态按条件汇总字段值
  7. POJ3080Blue Jeans(暴力)
  8. Google protobuf安装
  9. android 关于提高第三方app的service优先级
  10. posix thread线程
  11. PC-信使服务之不用聊天软件也能通信
  12. Activiti工作流学习-----基于5.19.0版本(6)
  13. Java socket通信
  14. 使用express, create-react-app, mongodb搭建react模拟数据开发环境
  15. CDI Features(EL(SPEL),Decorator,Interceptor,Producer)
  16. CentOS安装python-pip
  17. [Apio2012]dispatching 左偏树做法
  18. Java中的I/O 线程 网络
  19. webpack快速入门——配置JS压缩,打包
  20. (四)SpringMvc文件上传

热门文章

  1. I/O多路转接之select
  2. 导入Android工程源码出现乱码问题的解决方法
  3. 用eval 动态编译代码
  4. ie11下,插入框架Html
  5. Grunt:多个css,js,进行单独压缩
  6. CentOS下命令行和桌面模式的切换方法(转载)
  7. ASP.NET MVC轻教程 Step By Step 3 ——使用ViewBag
  8. Web工程软件升级之数据库升级(二)
  9. [BZOJ 1207] [HNOI 2004] 打鼹鼠 【DP】
  10. 【Java】理解 UDDI 注册中心的 WSDL