ChecklistBox的使用总结[通俗易懂]

ChecklistBox的使用总结[通俗易懂]前言ChecklistBox看起来一个很简单的控件,使用的时候想要达到理想的效果是需要费一番功夫的,这篇博客对于近一两周来项目中主界面设计用到的ChecklistBox方法做了一点小小的总结。图示常用方法1.添加项checkedListBox1.Items.Add(“吃饭”);checkedListBox1.Items.Add(“睡觉”);checkedListB

大家好,又见面了,我是你们的朋友全栈君。

# 前言
  ChecklistBox看起来一个很简单的控件,使用的时候想要达到理想的效果是需要费一番功夫的,这篇博客对于近一两周来项目中主界面设计用到的ChecklistBox方法做了一点小小的总结。
##图示
这里写图片描述

常用方法

  • 1.添加项
	checkedListBox1.Items.Add("吃饭"); 
	checkedListBox1.Items.Add("睡觉"); 
	checkedListBox1.Items.Add("打豆豆");
  • 2.设置复选框为单选
       private void ChecklistBox_ItemCheck(object sender, ItemCheckEventArgs e)
        {      
            if (ChecklistBox.CheckedItems.Count > 0)
            {
                for (int i = 0; i < ChecklistBox.Items.Count; i++)
                {
                    if (i != e.Index)
                    {
                       ChecklistBox.SetItemChecked(i, false);
                    }
                }
            }   
        }
  • 3.设置整个复选框不可用,置灰
 ChecklistBox.Enabled = false;
  • 4.判断是否有选中的item
	    //4.1 判断是否有选中项
            if (ChecklistBox1.CheckedItems.Count == 0 )
            {
                MessageBox.Show("请先选中要执行的计划");
            }
        //4.2 判断第i项是否选中 ,选中返回true,否则选false
			if(checkedListBox1.GetItemChecked(i))
		{
			 return true;
		} 
		else
		{
			 return false; 
		}
  • 5.设置第i项的选中状态
      //true选中,false为未选中
      checkedListBox1.SetItemChecked(i, true);  
  • 6.得到选中项的值
	 //6.1得到一个选中项的值
	 string strPlan = checkedListBox1.SelectedItem.ToString();
	  
	 //6.2得到所有选中项的值
	 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]);
			   }
		   }
	}
  • 7.清除复选框中所有item
	for (int i = 0; i < checkedListBox1.Items.Count; i++)
	{
			checkedListBox1.Items.Clear();
	}
  • 8.反向选择复选框中的item
	for (int i = 0; i < checkedListBox1.Items.Count; i++) 
		{ 
			if (checkedListBox1.GetItemChecked(i)) 
		   { 
			   checkedListBox1.SetItemChecked(i, false); 
		   } 
		   else 
		   { 
			   checkedListBox1.SetItemChecked(i, true); 
		   } 
		}	
  • 9.将item从一个复选框转移到另一个复选框
		for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++) 
		{ 
					 checkedListBox2.Items.Add(this.checkedListBox1.CheckedItems);
		 
		  //remove是除去一个具体的值,不是index
			 this.checkedListBox1.Items.Remove(this.checkedListBox1.CheckedItems);       
		}
  • 10.设置选中item置灰,不能重复再选
	            for (int i = 0; i < clbOver.Items.Count; i++)      
            {
                clbOver.GetItemChecked(i);
                clbOver.SetItemCheckState(i, CheckState.Indeterminate);                                
             
            }

总结

 以上是最近一段时间对ChecklistBox实践过程中常用方法的总结,希望能对大家有所帮助。有一点感受是:在使用一个控件之前查看官方文档遍历一遍它的所有属性,方法和事件很有必要,有了这样一层宏观之后可以帮助大家在具体实践过程中少走弯路。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148214.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月29日 下午12:16
下一篇 2022年6月29日 下午12:36


相关推荐

  • Vue中 使用定时器 (setInterval、setTimeout)[通俗易懂]

    Vue中 使用定时器 (setInterval、setTimeout)[通俗易懂]js中定时器有两种,一个是循环执行setInterval,另一个是定时执行setTimeout。定时器需要在页面销毁的时候清除掉,不然会一直存在!1.循环执行(setInterval)顾名思义,循环执行就是设置一个时间间隔,每过一段时间都会循环执行这个方法,直到这个定时器被销毁掉;语法:setInterval(code,milliseconds);setInterval(function,milliseconds,param1,param2,…);code/funct

    2026年4月17日
    2
  • CreateEvent用法

    CreateEvent用法事件对象就像一个开关:它只有两种状态—开和关。当一个事件处于”开”状态,我们称其为”有信号”否则称为”无信号”。可以在一个线程的执行函数中创建一个事件对象,然后观察它的状态,如果是”无信号”就让该线程睡眠,这样该线程占用的CPU时间就比较少。产生事件对象的函数如下: HANDLE    CreateEvent(       LPSECURITY_ATTRIBUTES   

    2022年7月12日
    17
  • JAVA 解析Xml字符串

    JAVA 解析Xml字符串JAVA解析Xml字符串(dom4j)

    2022年5月4日
    57
  • html超链接悬浮,下列css代码,能控制鼠标悬浮其上的超链接样式

    html超链接悬浮,下列css代码,能控制鼠标悬浮其上的超链接样式摘要:下列不属特性品的主要质量于食。标悬置为将E1端道化的命令是非信方式口设。新中国成0年立7来,上的式特色民主协商中国局面)的成(已形,特色提供中国主义制度障要保为建完善立和了重社会。…下列不属特性品的主要质量于食。变动成本法下,制鼠包括期间成本。标悬置为将E1端道化的命令是非信方式口设。在全基础竣后的售的()内程报业务完成后交付应数据。些积制度作用建立极的有哪务员和完回避善公。特点休的公务…

    2022年7月19日
    16
  • linux怎么关闭防火墙命令,Linux怎么用命令永久关闭防火墙

    有时防火墙会限制我们下载上传操作等,而Linux操作系统想要关闭防火墙有很多命令。具体有哪些呢?下面由学习啦小编为大家整理了linux中永久关闭防火墙命令的相关知识,希望对大家有帮助!Linux永久关闭防火墙命令1)永久性生效,重启后不会复原开启:chkconfigiptableson关闭:chkconfigiptablesoff2)即时生效,重启后复原开启:serviceiptab…

    2022年4月8日
    223
  • KafkaSpout 浅析

    KafkaSpout 浅析最近在使用 storm 做一个实时计算的项目 Spout 需要从 KAFKA 集群中读取数据 为了提高开发效率 直接使用了 Storm 提供的 KAFKA 插件 今天抽空看了一下 KafkaSpout 的源码 记录下心得体会 nbsp nbsp nbsp nbsp KafkaSpout 基于 kafka javaapi consumer SimpleConsum 实现了 consumer 客户端的功能 包括 partition 的分配 消费

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号