C# Checklistbox的用法

C# Checklistbox的用法

1、添加项

  • 
    checkedListBox1.Items.Add("蓝色"); 
    checkedListBox1.Items.Add("红色"); 
    checkedListBox1.Items.Add("黄色");
    
    		

  • 2、判断第i项是否选中,选中为true,否则为false

  • 
    if(checkedListBox1.GetItemChecked(i))
    {
         return true;
    } 
    else
    {
         return false; 
    }
    
    		
  • 3、设置第i项是否选中


    checkedListBox1.SetItemChecked(i, true);  //true改为false为没有选中。

    4、设置全选 
     

    添加一个名为select_all的checkbox控件,由其控制checkedListBox是全选还是全不选。
     

  •  
  • C# 代码   复制
  • 
    private void select_all_CheckedChanged(object sender, EventArgs e) 
    { 
         if(select_all.Checked) 
    {
              for (int j = 0; j < checkedListBox1.Items.Count; j++) 
                   checkedListBox1.SetItemChecked(j, true); 
    }
    else 
    {
    for (int j =0; j < checkedListBox1.Items.Count; j++) 
          checkedListBox1.SetItemChecked(j, false);
    }
    }
    
    		

  • 5、得到全部选中的值 ,并将选中的项的文本组合成为一个字符串

  •  
  • C# 代码   复制
  • 
     string strCollected = string.Empty;
     for (int i = 0; i < checkedListBox1.Items.Count; i++)
     {
          if (checkedListBox1.GetItemChecked(i))
          {
              if (strCollected == string.Empty)
              {
                   strCollected = checkedListBox1.GetItemText(
    checkedListBox1.Items[i]);
              }
              else
              {
                   strCollected = strCollected + "/" + checkedListBox1.
    GetItemText(checkedListBox1.Items[i]);
               }
           }
    }
    
    		
  • 6、设置CheckedListBox中第i项的Checked状态
     

    checkedListBox1.SetItemCheckState(i, CheckState.Checked);
     

    7、 为checklistbox绑定数据源

  • C# 代码   复制
  • 
    /// <summary>
            /// 为checklistbox绑定数据源
            /// </summary>
            /// <typeparam name="T">数据源类型</typeparam>
            /// <param name="checklistbox">checklistbox对象</param>
            /// <param name="list">数据源</param>
            /// <param name="texfield">显示值字段名称</param>
            /// <param name="valuefield">值字段名称</param>
            public void CheckListboxDatabind<T>(CheckBoxList checklistbox, List<T> list, string texfield, string valuefield)
            {
                checklistbox.DataSource = list;
                checklistbox.DataTextField = texfield;
                checklistbox.DataValueField = valuefield;
                checklistbox.DataBind();
            }
    
    		
  • 8、checkedListBox 单选设置

  •  
  • C# 代码   复制
  • 
    private void chkl_ItemAuditing_ItemCheck(object sender,   
    ItemCheckEventArgs e)
    { 
         if (chkl_ItemAuditing.CheckedItems.Count > 0) 
        { 
             for (int i = 0; i < chkl_ItemAuditing.Items.Count; i++) 
             {
    if (i != e.Index) 
    { 
    this.chkl_ItemAuditing.SetItemCheckState(i, 
    System.Windows.Forms.CheckState.Unchecked); 
    } 
    } 
    } 
    }
    
    		
  • 9、checkedListBox1显示一个数据库中关键字对应的所有记录
     

  •  
  • C# 代码   复制
  • 
    for (int i = 0; i < table.Rows.Count; i++) 
    { 
        string name = table.Rows["myname"].ToString(); 
        string paw = table.Rows["mypaw"].ToString(); 
        checkedListBox1.Items.Add(name + paw); 
    }
    
    		
  • 10、清除checkedListBox1中所有的选项

  • 
    for (int i = 0; i < checkedListBox1.Items.Count; i++)
    {
        checkedListBox1.Items.Clear();
    }
    
    		
  • 11、设置checklistboxbox选中的值
     

  •  
  • C# 代码   复制
  • 
            public void SetCheckListBoxChecked(CheckBoxList checklistbox, string checkvale)
            {
                string[] checkstrs;
                checkstrs = checkvale.Split(',');
                for (int i = 0; i < checklistbox.Items.Count; i++)
                {
                    for (int j = 0; j < checkstrs.Length; j++)
                    {
                        if (checklistbox.Items[i].Value == checkstrs[j])
                        {
    
                            checklistbox.Items[i].Selected = true;
                            break;
                        }
                    }
                }
            }
    
    		
  • 12、获取checklistbox选中的值
     

  •  
  • C# 代码   复制
  • 
           /// <summary>
            /// 获取checklistbox选中的值
            /// </summary>
            /// <param name="checklistbox">checklistbox对象</param>
            /// <returns>string字符串</returns>
            public string GetChecklistvalue(CheckBoxList checklistbox)
            {
                string listvalue = "";
                for (int i = 0; i < checklistbox.Items.Count; i++)
                {
    
                    if (checklistbox.Items[i].Selected)
                    {
                        listvalue = listvalue + checklistbox.Items[i].Value + ",";
                    }
                }
                return listvalue;
            }
    
    		
  • 标签: