• DEV CheckComboboxEdit、CheckedListBoxControl(转)


    CheckComboboxEdit

       //先清空所有,若在窗体Load事件中,也可以不清空

                //cbRWYs.Properties.Items.Clear();

                var RwyList = tspro.Airport.Rwydirs.Select(c=>new { c.RUNWAY_DIRECTION_UUID, c.DESIGNATOR }).ToList(); //设置值列表           

                //combobox赋值

                CheckedListBoxItem[] itemListQuery = new CheckedListBoxItem[RwyList.Count];

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

                {

                    itemListQuery[i] = new CheckedListBoxItem(RwyList[i].RUNWAY_DIRECTION_UUID, RwyList[i].DESIGNATOR);

                }

                cbRWYs.Properties.Items.AddRange(itemListQuery);

     

                //cbRWYs.Properties.ShowPopupCloseButton = false; //是否显示Cancel按钮

        //cbRWYs.Properties.ShowButtons = false;//是否显示Ok Cancel按钮

                //cbRWYs.Properties.SelectAllItemVisible = false; //不显示Select All选项

                cbRWYs.Properties.SelectAllItemCaption = "全选"; //将Select All 选择改名

       //目前没找到更改Ok,Cancel按钮的方法,可能不支持改这两个按钮

       //赋值

       foreach (CheckedListBoxItem airportItem in this.cbxServedAirport.Properties.Items)
                {
                    if (CmmUtils.GetString(airportItem.Value) == despTSData.AIRPORT_NAME)
                    {
                        airportItem.CheckState = CheckState.Checked;
                    }
                    else
                    {
                        airportItem.CheckState = CheckState.Unchecked;
                    }
                }

    //全选用CheckAll

             

             

    //清空项
                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<object> 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

            

             

    //自定义一个表
                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<object> 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);
                    }
                }
            }

  • 相关阅读:
    网页图表Highcharts实践教程之外层图表区
    网页图表Highcharts实践教程之图表代码构成
    网页图表Highcharts实践教程之认识Highcharts
    Playmaker全面实践教程之Playmaker常用工具
    Playmaker全面实践教程之简单的使用Playmaker示例
    Playmaker全面实践教程之playMaker编辑器
    Playmaker Input篇教程之引入的核心概念
    Playmaker Input篇教程之PlayMaker菜单概述
    Playmaker Input篇教程之Playmaker购买下载和导入
    关于中值滤波算法,以及C语言实现(转)
  • 原文地址:https://www.cnblogs.com/mol1995/p/7989758.html
Copyright © 2020-2023  润新知