Bootstrap

C# WinForm —— 14 CheckedListBox 复选列表框介绍

1. 简介

类似 ListBox,提供项的列表,区别就是 CheckedListBox 每一个项前面有个复选框
在这里插入图片描述

2. 常用属性

属性解释
(Name)控件ID,在代码里引用的时候会用到,一般以 ckl 开头
BackColor背景颜色
BoderStyle边框样式:无、FixedSingle、Fixed3D
MultiColumn是否允许多列显示,默认是false
ColumnWidth多列ListBox中各列的宽度,默认值是0,不是以多列显示的
DockCheckedListBox在当前容器中的位置是靠上、靠下、靠左、靠右、还是全填充
ForeColor前景色,显示文本
Items项的集合,和listBox, ComboBox类似
ScrollAlwaysVisible是否始终显示滚动条,而不管列表框中有多少项
SelectionMode项的选择模式,是单项选择、简单多项选择、扩展多项选择,还是不可选择。和listBox类似。SelectionMode.MultiExtended 表示允许选择多项,但选中的条目必定相连(相邻),鼠标当选中一项后,按 键盘↑↓可以选定一个范围的选项,但选项不能间隔选中。SelectionMode.MultiSimple 表示允许选择多项,可以任意选中多个条目,点一下可以选中一条项目,重复点一下即取消。
SelectedItems在这里插入图片描述
CheckedItems表示勾选的项的集合;
CheckedIndices表示勾选的多项的索引值集合;在这里插入图片描述
CheckOnClick指示复选框是否应在首次单击某项时切换。选中和勾选是不一样的。选中了不一定勾选,勾选了也不一定选中,勾选是指勾选前面的复选框。当该属性值设置为true时,选中某一项时 就会 勾选/取消勾选 该项。
Sorted是否对列表进行排序
ThreeDCheckBoxes复选框的ButtonState是Flat还是Normal
DataSource指示此控件将用来获取其项的列表,它的数据通常是一个DataTable, 或者是一个List,dictionary,通常通过一个中间绑定控件BoundingSource进行数据转换,如果指定数据源的话,要设置DisplayMember属性值和ValueMember属性值。 虽然在属性面板中找不到这个选项,但这个属性也是存在的。在这里插入图片描述
DisplayMember列表项中显示的文本信息
ValueMember项的实际值

在这里插入图片描述

3. Items方法 和 绑定数据源

和listBox类似
在这里插入图片描述

cklList.Items.Clear();
cklList.Items.Add(1);
cklList.Items.Add("aaa");
cklList.Items.AddRange(new string[] {"aaa", "bbb", "ccc"});
cklList.Items.Insert(2, "ddd");
cklList.Items.Remove("ddd");
cklList.Items.RemoveAt(2); // 移除第3项

指定数据源方式添加项,也和ListBox类似(C# WinForm —— 12 ListBox绑定数据):
在这里插入图片描述
在这里插入图片描述

4. 事件

常用事件解释
SelectedIndexChanged所选中的项的索引值发生改变时,所做的操作。
SelectedValueChanged所选中的项的值发生改变时,所做的操作。
ItemCheck某项的选中状态要更改时触发的事件

参考:2023年C#之WinForm零基础教程50讲

;