C# checklistbox控件用法總結(怎樣得到多選的值,以及動態加載數據)



一般認爲: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) 
  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章