CheckComboboxEdit、CheckedListBoxControl

CheckComboboxEdit

         CheckComboboxEdit、CheckedListBoxControl_第1张图片

          //清空项
            checkedComboBoxEdit1.Properties.Items.Clear();

            //自定义数组
            string[] strs=new string[]{"新建","审批中","已完成","已撤销"};
            //添加项
            checkedComboBoxEdit1.Properties.Items.AddRange(strs);

            //设置选中状态
            if(checkedComboBoxEdit1.Properties.Items.Count>0){
                //设置选中状态
                checkedComboBoxEdit1.Properties.Items[strs[0]].CheckState = CheckState.Checked;
                //设置选项是否可用
                checkedComboBoxEdit1.Properties.Items[strs[0]].Enabled = false;
            }
            //取值
            checkedComboBoxEdit1.EditValue.ToString();
            //获取各项值 放在List集合中
            List List = checkedComboBoxEdit1.Properties.Items.GetCheckedValues();

            //注意 当取得值是多项时,各项之间的间隔是 英文状态下 逗号+空格
            //转换方法
            string result = checkedComboBoxEdit1.EditValue.ToString().Replace(", ", ",");

            //是否显示 确定、取消按钮
            checkedComboBoxEdit1.Properties.ShowButtons = false;
            //是否显示 取消按钮
            checkedComboBoxEdit1.Properties.ShowPopupCloseButton = false;

            //下拉显示项的个数 (设置为下拉个数加1正好可以显示全部,因为有一行是全选项)
            checkedComboBoxEdit1.Properties.DropDownRows = checkedComboBoxEdit1.Properties.Items.Count + 1;

CheckedListBoxControl

        CheckComboboxEdit、CheckedListBoxControl_第2张图片

          //自定义一个表
            DataTable dt = new DataTable();
            dt.Columns.Add("ID");
            dt.Columns.Add("Name");
            dt.Columns.Add("Sex");
            for (int i = 0; i < 30; i++) {
                DataRow dr = dt.NewRow();
                dr["ID"] = i + 1;
                dr["Name"]=Convert.ToString((char)(65+i))+Convert.ToString((char)(65+i));
                dr["Sex"] = i % 2==0?"男":"女";
                dt.Rows.Add(dr);
            }
            //清空项
            checkedListBoxControl1.Items.Clear();

            //绑定
            checkedListBoxControl1.DataSource = dt;
            checkedListBoxControl1.ValueMember = "ID";
            checkedListBoxControl1.DisplayMember = "Name";

            //全选
            //checkedListBoxControl1.CheckAll();

            //项的个数
            int itemCount = checkedListBoxControl1.ItemCount;

            //添加项(如果设置绑定,添加项无效)
            checkedListBoxControl1.Items.Add("kk");

            //设置选中状态、显示值、实际值、是否可用(如果设置绑定,这些将会无效)
            checkedListBoxControl1.Items[0].CheckState = CheckState.Checked;
            checkedListBoxControl1.Items[0].Description = "显示值";
            checkedListBoxControl1.Items[0].Value = "实际值";
            checkedListBoxControl1.Items[0].Enabled = false;
            //效果和上面一样
            checkedListBoxControl1.SetItemChecked(0, true);
            checkedListBoxControl1.SetItemCheckState(0, CheckState.Checked);
            checkedListBoxControl1.SetItemValue("实际值",0);           

            //是否被勾选
           bool isChecked=  checkedListBoxControl1.GetItemChecked(0);
            //获取某项状态
           string checkState = checkedListBoxControl1.GetItemCheckState(0).ToString();
            //获取某项绑定值 valueMember
           string trueValue = checkedListBoxControl1.GetItemValue(0).ToString();
            //获取某项显示值   displayMember
           string disValue = checkedListBoxControl1.GetDisplayItemValue(0).ToString();
           string disValue2 = checkedListBoxControl1.GetItemText(0);

            //是否点击一次 就改变状态
           checkedListBoxControl1.CheckOnClick = true;

            //是否多列显示
           checkedListBoxControl1.MultiColumn = true;

            //checkedListboxControl 是否获得焦点
           bool isfocus=checkedListBoxControl1.ContainsFocus;

           //实现单选功能
            checkedListBoxControl1.SelectedIndexChanged += new EventHandler(checkedListBoxControl1_SelectedIndexChanged);
         
            //获取选中项的绑定值(前提:手动添加的可以获取,但是datatable绑定的无法获取)
           List objList = checkedListBoxControl1.Items.GetCheckedValues();

       void checkedListBoxControl1_SelectedIndexChanged(object sender, EventArgs e)
        {
            int index=checkedListBoxControl1.SelectedIndex;
            for (int i = 0; i < checkedListBoxControl1.ItemCount; i++) {
                if (i != index)
                {
                    checkedListBoxControl1.SetItemChecked(i, false);
                }
            }
        }

你可能感兴趣的:(DevExpress控件)