CheckedListBox数据绑定及取值技巧

CheckedListBox数据绑定及取值技巧  

 
1、添加项:Items.Add


checkedListBox1.Items.Add("June");
checkedListBox1.Items.Add("Jun");
2、判断第i项是否选中GetItemChecked(index)


checkedListBox1.GetItemChecked(i)
3、设置第i项是否选中SetItemChecked(index,bool)或者SetItemCheckState(index,CheckState)


checkedListBox1.SetItemChecked(index, true);
checkedListBox1.SetItemCheckState(index, CheckState.Unchecked);
4、设置全选


for (int i = 0; i < listBoxLED.Items.Count; i++)
{
    checkedListBox1.SetItemCheckState(i, CheckState.Checked);
    //checkedListBox1.SetItemChecked(i, true);
}
5、数据绑定


CheckedListBox应该是由ListBox扩展而来的,但在使用的时候,可能会发现——它不支持DataSource属性,不能像ListBox那样指定其数据源为一个DataTable。


事实上,CheckedListBox像ListBox一样有DataSource属性,DisplayMember和ValueMemeber属性也都是有的,只是IntelliSense不能将其智能感知出来。


因此,我们可以通过代码将CheckedListBox绑定。


DataSet ds=bll.GetAllStudent();
checkedListBox1.DataSource = ds.Table[0];
checkedListBox1.ValueMember = "student_id";

checkedListBox1.DisplayMember = "student_name";


6、如何获取checkedListBox1选中项的DisplayMember和ValueMember


方法1:

for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++)
{
    DataRowView dv = ((DataRowView)checkedListBox1.CheckedItems[i]);
    string id = dv["student_id"].ToString();
    string name = dv["student_name"].ToString();
}


方法2:


获取Text:获取Text还是很简单,就在CheckedListBox上获取就行.获取选中选中项的Text


string name = checkedListBox1.GetItemText(checkedListBox1.Items[i]);
获取Value的值:这里就用了一个技巧,就是通过绑定到CheckedListBox的DataSet来获取。(在网上看到说是因为在CheckedListBox中获取到的索引Index是与DataSet中相应的值是一样的。知道原因的帮忙解释一下)


string name = ds.Tables[0].Rows[i]["student_name"].ToString();//此处i为CheckedListBox选中项的索引
 

7:  点击复选框选中

CheckOnClick = true



如果大家觉得CheckedListBox哪些知识点比较常用,欢迎补充。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值