WinForm(C#)CheckedlistBox绑定数据

WinForm(C#)CheckedlistBox绑定数据,并获得选中的值(ValueMember)和显示文本(DisplayMember)
本文中我将和大家讨论关于在WinForm开发中给CheckedlistBox空间绑定数据源,并获取控件中选中的所有元素的显示文本(DisplayMember)和对应的实际值(ValueMember)的问题,后者将是讨论的重点。
为了更方便地说明,首先我要预设一些条件。

一、条件预设:

  1. 已定义一个DataTable对象myDataTable,并且myDataTable的字段及数据如下:
ID                   分类名称(TypeName) 
1                    金属制品  
2                    通用及专用机械设备 
3                    纸及纸制品 
4                    交通运输设备 
5                    电气机械及器材 
6                    通信设备 
7                    计算机及其他 
8                    电子设备 
9                    仪器仪表及文化 
10                   办公用机械
  1. WinForm状体中有一个CheckedlistBox控件,ID为:myCheckedlistBox;一个文本控件,ID为:DisplayText;两个按钮:获取已选的文本(ID:GetText),获取已选的实际值(ID:GetValue)。如下:


    1.png

二、具体实现:

  1. 给CheckedlistBox控件myCheckedlistBox绑定数据源,这个方法很简单,固定程式,
    网上一搜一大把,就直接上代码了
 1. this.myCheckedlistBox.DataSource = myDataTable;     
 2. this.myCheckedlistBox.ValueMember = "ID";     
 3. this.myCheckedlistBox.DisplayMember = "TypeName";
  1. 获取CheckedlistBox控件myCheckedlistBox中已选中的所有元素的显示文本(DisplayMember)。
/// <summary>      
/// 按钮(GetText)单击事件:获取获取已选的文本     
/// </summary>      
/// <param name="sender"></param>     
/// <param name="e"></param>      
private void GetText_Click(object sender, EventArgs e)     
{      
    string checkedText = string.Empty;      
     for (int i = 0; i < this.myCheckedlistBox.CheckedItems.Count; i++)     
     {      
         checkedText += (String.IsNullOrEmpty(checkedText) ? "" :  ",") 
                     +  this.myCheckedlistBox.GetItemText(this.myCheckedlistBox.Items[i]);      
     } 
    this.DisplayText.Text = checkedText;     
}
2.png
  1. 获取CheckedlistBox控件myCheckedlistBox中已选中的所有元素对应的实际值(ValueMember)。
/// <summary>      
/// 按钮(GetValue)单击事件:获取已选的实际值     
/// </summary>      
/// <param name="sender"></param>     
/// <param name="e"></param>      
private void GetValue_Click(object sender, EventArgs e)     
{      
    string checkedText = string.Empty;      
    for (int i = 0; i < this.myCheckedlistBox.Items.Count; i++)     
      {      
         if (this.myCheckedlistBox.GetItemChecked(i))     
         {      
             this.myCheckedlistBox.SetSelected(i, true);      
              checkedText += (String.IsNullOrEmpty(checkedText) ?  "" : ",") 
                          + this.myCheckedlistBox.SelectedValue.ToString();     
          }     
      }      
     this.DisplayText.Text = checkedText;     
 } 
3.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,537评论 0 17
  • 《ilua》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 1...
    叶染柒丶阅读 11,007评论 0 11
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,981评论 19 139
  • 《ijs》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 5,342评论 0 7
  • 有两种方式:一、添加上标元素1、使用 元素1.1、HTML代码: 好好学习,天天向上 热 1.2、CSS代码:无...
    心彻阅读 10,752评论 0 0