2-11 CheckedListBox 可选列表框控件

简介:

2-11  CheckedListBox 可选列表框控件

u 本节学习目标:
n 了解CheckedListBox控件的属性及方法
n 掌握CheckedListBox控件被选择后的移除和添加方法
n 学习CheckedListBox控件在移除和添加时候的注意事项
n 学习CheckedListBox控件在移除和添加时候的多种解决方案

     2-11-1   简介

可选列表框控件 CheckedListBox 类似于 ListBox Checkbox 控件的综合体,允许用户在 ListBox 内有选择的挑选具体内容。

     2-11-2   CheckedListBox控件的属性及方法

CheckedListBox 控件主要的属性和事件如表 2-11 所示:
属性
说明
Items
描述控件对象中的所有项。
MutiColumn
决定是否可以以多列的形式显示各项。在控件对象的指定高度内无法完全显示所有项时可以分为多列,这种情况下若MutiColumn属性值为false,则会在控件对象内出现滚动条。
ColumnWidth
当控件对象支持多列时,指定各列所占的宽度
CheckOnClick
决定是否在第一次单击某复选框时即改变其状态
SelectionMode
指示复选框列表控件的可选择性。该属性只有两个可用的值NoneOne,其中None值表示复选框列表中的所有选项都处于不可选状态;One值则表示复选框列表中的所有选项均可选。
Sorted
表示控件对象中的各项是否按字母的顺序排序显示
CheckedItems
表示控件对象中选中项的集合,该属性是只读的
CheckedIndices
表示控件对象中选中索引的集合
事件与方法
说明
SetItemChecked
设置列表中的某个复选框的选中状态。
SetSelected
设置列表中的某个复选框的待选状态。
2-11 CheckedListBox控件的属性及方法

     2-11-3    CheckedListBox控件实践操作

1.   案例学习:CheckedListBox 控件的设计开发

1 )从工具箱之中拖放三个 CheckedListBox 控件和四个 Button 控件,如图 2-37 所示进行排列。当点击左右移动的符号按钮时候,左右两侧的数据信息将按照客户意图进行移动,而移动信息将显示在下面的 CheckedListBox 控件中。
2-37  CheckedListBox控件运行效果图
2 )具体功能的实现见下面的编码部分:
         ///   <summary>
        /// 初始化事件在左侧的checkedListBox加载星期信息
        /// </summary>
        private void Form4_Load(object sender, EventArgs e)
        {
            checkedListBox1.Items.Add("星期一");
            checkedListBox1.Items.Add("星期二");
            checkedListBox1.Items.Add("星期三");
            checkedListBox1.Items.Add("星期四");
            checkedListBox1.Items.Add("星期五");
            checkedListBox1.Items.Add("星期六");
            checkedListBox1.Items.Add("星期日");
        }
        /// <summary>
        /// 移至右侧部分项
        /// </summary>
        private void button1_Click(object sender, EventArgs e)
        {
            foreach (object o in checkedListBox1.CheckedItems)
            {
                checkedListBox2.Items.Add(o);
            }
            for (int i = 0; i < checkedListBox1.Items.Count; i++)
            {
                if (checkedListBox1.CheckedItems.Contains(checkedListBox1.Items[i]))
                {
                 checkedListBox3.Items.Add(checkedListBox1.Items[i].ToString() + "被移至右侧");
                 checkedListBox1.Items.Remove(checkedListBox1.Items[i]);
                }
            }
        }
        /// <summary>
        /// 左侧全部移到右侧
        /// </summary>
        private void button2_Click(object sender, EventArgs e)
        {
            foreach (object o in checkedListBox1.Items)
            {
                checkedListBox2.Items.Add(o);
            }
            checkedListBox1.Items.Clear();
            checkedListBox3.Items.Add("左侧全部移到右侧");
        }
        /// <summary>
        /// 右侧移到左侧
        /// </summary>
        private void button3_Click(object sender, EventArgs e)
        {
            foreach (object o in checkedListBox2.CheckedItems)
            {
                checkedListBox1.Items.Add(o);
            }
            for (int i = 0; i < checkedListBox2.Items.Count; i++)
            {
                if (checkedListBox2.CheckedItems.Contains(checkedListBox2.Items[i]))
                {
                 checkedListBox3.Items.Add(checkedListBox1.Items[i].ToString() + "被移至左侧");
                 checkedListBox2.Items.Remove(checkedListBox2.Items[i]);
                }
            }
        }
        /// <summary>
        /// 右侧全部移至左侧
        /// </summary>
        private void button4_Click(object sender, EventArgs e)
        {
            foreach (object o in checkedListBox2.Items)
            {
                checkedListBox1.Items.Add(o);
            }
            checkedListBox2.Items.Clear();
            checkedListBox3.Items.Add("右侧全部移到左侧");
        }




本文转自 qianshao 51CTO博客,原文链接:http://blog.51cto.com/qianshao/208670,如需转载请自行联系原作者

目录
相关文章
|
6月前
|
索引
[Qt5&控件] 下拉框ComBoBox和层叠窗口StackedWidget控件组合使用
[Qt5&控件] 下拉框ComBoBox和层叠窗口StackedWidget控件组合使用
157 0
|
6月前
[Qt5&控件] 选项卡tabWidget控件隐藏&增加tab个数
[Qt5&控件] 选项卡tabWidget控件隐藏&增加tab个数
466 0
|
API Windows 容器
MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件(上)
MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件
206 0
MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件(上)
MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件(下)
MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件
169 0
|
C#
自定义Behavior 实现Listbox自动滚动到选中项
原文:自定义Behavior 实现Listbox自动滚动到选中项 blend为我们提供方便的behavior来扩展我们的控件,写好之后就可以在blend中方便的使用了。 下面是自定义的behavior来实现Listbox自动滚动到选中项 其中this.AssociatedObject为使用该行为的控件。
1063 0
|
C#
C# DataGridview控件自动下拉到最后一行
有时候使用DataGridView难免会在最后插入一条数据,如果插入的数据超过滚动条显示的行数,那么默认情况下不会显示到最后一行。增加以下代码一直将滚动条拉倒最低。 this.dataGridView1.
2631 0