listBoxControl和checkedListBoxControl
常用属性
DataSource---------数据源
DisplayMember-----默认显示成员
这两个属性是listBoxControl和checkedListBoxControl绑定数据必须要设置的数据
SelectionMode-----选择方式(单选/多选)
这个属性listBoxControl比较常用,checkedListBoxControl一般不用设置
SelectedItem------选中项
SelectedValue-----选中值
这两个方法都是用于获取单一选中项的,放回的都是DataRowView类型的对象,如果多选,一般返回第一个对象
DataRowView的Row属性可以返回一个DataRow类型的对象
SelectedItems-----多个选中项
测试代码
初始化,给listBoxControl和checkedListBoxControl绑定数据
DataTable dt = new DataTable(); dt.Columns.Add("name"); dt.Columns.Add("id"); dt.Columns.Add("score"); dt.Rows.Add(new object[]{"小黄","10001","80"}); dt.Rows.Add(new object[] { "小李", "10002", "80" }); dt.Rows.Add(new object[] { "小陈", "10003", "80" }); dt.Rows.Add(new object[] { "小红", "10004", "80" }); listBoxControl1.SelectionMode = SelectionMode.MultiSimple; listBoxControl1.DataSource = dt; listBoxControl1.DisplayMember = "name"; checkedListBoxControl1.DataSource = dt; checkedListBoxControl1.DisplayMember = "name";
然后获取选中项
DataRowView list=listBoxControl1.SelectedItem as DataRowView; BaseListBoxControl.SelectedItemCollection lists = listBoxControl1.SelectedItems; foreach (DataRowView item in lists) { string name = item["name"].ToString(); } DataRowView value = listBoxControl1.SelectedValue as DataRowView; BaseCheckedListBoxControl.CheckedItemCollection checkboxs = checkedListBoxControl1.CheckedItems; foreach (DataRowView item in checkboxs) { string name = item["name"].ToString(); }
这里可以看到
listBoxControl的SelectedItems获取到的是一个BaseListBoxControl.SelectedItemCollection类型的集合
和checkedListBoxControl的SelectedItems获取到的是一个BaseCheckedListBoxControl.CheckedItemCollection类型的集合
不过这两个集合的子项都是DataRowView类型的对象,所以可以遍历集合获取 DataRowView对象然后获取数据或DataRow