dev checkedlistbox动态绑定数据

时间:2021-09-06 16:18:57

最近在做项目的时候遇到个问题。用checkedlistbox控件绑定数据。在这里稍微总结一下。

其实动态绑定数据有两种方法下面说一下

1.通过数据源

DataTable dt=new DataTable();//数据源
CheckedListBoxControl yourControl=new CheckedListBoxControl();
yourControl.DisplayMember="显示的中文名称";
yourControl.ValueMember="绑定对应值";//这里经常绑定id之类的方便 做以后的处理
yourControl.DataSource=dt;

 当然这里对DisplayMember和ValueMember的赋值得和你的数据源中的对应列名是一致的。

2.手动一条一条插入数据

当手动插入数据的时候又想能实现第一种那样能绑定类似value的东西,这时候需要做一下处理。

    public class TestClass
    {
        String strvalue;
        String text;
        public String Text 
        {
            get
            {
                return text;
            }
            set 
            {
                text = value;
            }
        }
        public String Value
        {
            get
            {
                return strvalue;

            }
            set
            {
                strvalue= value;
            }
        }
   }
//这里testcalss也可以多加一些属性用来更方便处理 自己项目相关的东西。
TestClass t=new TestClass();
CheckedListBoxControl yourControl=new CheckedListBoxControl();
yourControl.Items.Add(t,t.Text,CheckState.Unchecked,true);//可以用循环加入多条
//通过上面的方法就可以添加数据了。下面说一下怎么遍历
 for (int i = 0; i < cklb.CheckedItems.Count; i++)
 {
       TestClass t= (TestClass)yourControl.CheckedItems[i];
       t.text;
       t.value;
}
通过类型转换,这样就能访问到对应的属性了。
有问题请多多提,不喜勿喷。