C# CheckedListBox控件的用法

by jack 11. August 2009 19:56

最近用到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_allcheckbox控件,由其控制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)
     {
         //
被选择了则将CheckedListBox中的所有条目都变为Checked状态
         for (int i = 0; i < checkedListBoxLayerControl.Items.Count;

                   i++)
         {    

checkedListBoxLayerControl.SetItemCheckState(i,

        CheckState.Checked);
}

}
else
{
     //
否则变成Unchecked状态
    for (int i = 0;

 i < checkedListBoxLayerControl.Items.Count; i++)
{

checkedListBoxLayerControl.SetItemCheckState(i, CheckState.Unchecked); 

}             

}
}


8.
checkedListBox
单选设置(代码实现)


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
显示一个数据库中关键字对应的所有记录


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.
for(i=0;i<CheckedListBox.Items.Count;i++)  
{  
   if(CheckedListBox.GetItemText(

CheckedListBox.Items)=="你得到的值")  
{  
      CheckedListBox.SetItemChecked(i,true);  
}  

}

 

11.

清除checkedListBox1中所有的选项


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

{

    checkedListBox1.Items.Clear();

}



12.

//设置索引为index的项为选中状态


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

{

    checkedListBox1.SetItemChecked(i, true);

 

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

if (checkedListBox1.GetSelected(i))

{

MessageBox.Show(checkedListBox1.CheckedItems.ToString());

}

}

 

14.

//选中checkedListBox1所有的选项

 

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

checkedListBox1.SetItemCheckState(i, CheckState.Checked);

}

 

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

//如果checkedListBox1的第i项被选中,

//则显示checkedListBox1对应的值

if (checkedListBox1.GetItemChecked(i))
{
     MessageBox.Show(checkedListBox1.Items.ToString());
}

}

 

16.

//反向选择checkedListBox1的选项


for (int i = 0; i < checkedListBox1.Items.Count; i++)
{
    if (checkedListBox1.GetItemChecked(i))
   {
       checkedListBox1.SetItemChecked(i, false);
   }
   else
   {
       checkedListBox1.SetItemChecked(i, true);
   }
}

17.

//checkedListBox1中选定的项->checkedListBox2


for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++)
{
     checkedListBox2.Items.Add(this.checkedListBox1.CheckedItems);

 

//remove是除去一个具体的值,不是index,注意了
     this.checkedListBox1.Items.Remove(

         this.checkedListBox1.CheckedItems);      
}

Tags:

技术文章

Comments

7/30/2010 10:06:08 AM #

old dog bad breath

In actually serious circumstances  the majority of us would do just about something to do away with lousy air  Persistent lousy breath of air may be a serious supply of embarrassment and potentially harm your career  cost you a job  or even injury your particular relationships  Billions are spent by folks worldwide to avoid undesirable brea

old dog bad breath | Reply

8/3/2010 6:11:39 AM #

makeup artist classes in los angeles county

The request is so simple  Basically peel again the applicator in the card  and center the pad on closed eyelid  Maintain in area at each and every corner in the eyesight  creating a  peace sign   and lightly rub the back again in the applicator while using the index finger of the cost-free hand  Clear away and dispose  lightly dust with set

makeup artist classes in los angeles county | Reply

Add comment


(Will show your Gravatar icon)

biuquote
  • Comment
  • Preview
Loading



Copyright © 2009 APJ Software

最新评论

Comment RSS

公告

欢迎使用APJ Blog!

日历

<<  September 2010  >>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

View posts in large calendar