您的位置:首页 > 编程语言 > C#

C# checklistbox控件用法总结(怎样得到多选的值,以及动态加载数据)

2014-12-01 06:08 429 查看

原文链接:http://blog.sina.com.cn/s/blog_4cf58c9c010106mx.html

一般认为:foreach (object obj in checkedListBox1.SelectedItems)即可遍历选中的值。

其实这里遍历的只是高亮的值并不是打勾的值。遍历打勾的值要用下面的代码:

for (int i = 0; i < checkedListBox1.Items.Count; i++)

{

    if (checkedListBox1.GetItemChecked(i))

    {

        MessageBox.Show(checkedListBox1.GetItemText(checkedListBox1.Items[i]));

    }

}

参考:

最近用到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是全选还是全不选。
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.

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

 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. 
private void checkBoxAll_CheckedChanged(object sender, EventArgs e) 



     if (checkBoxAll.Checked) 

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: