DevExpress- CheckedListBoxControl DataSource属性存在BUG

前几天在开发的时候,用到了Dev中的CheckedListBoxControl,我使用DataSource属性,给其绑定了一个List对象。界面显示都挺正常的,当若干个项的复选框被选中的后,它的checkedListBoxControl1.CheckedItems也是正常的。

唯独的问题是在代码中得到的checkedListBoxControl1.Items.Count 为0,自然就不能遍历控件的中的所有项。checkedListBoxControl1能够正确获得某个Item对象的方法就剩下GetItemValue(idx)、SetItemChecked等。

如果你也遇到这种情况,请使用下面的方法来遍历所有的Item,并做出相应的处理:

第一个例子是全不选:

        public void ClearCheckState()
        {
            int idx = 0;
            while (checkedListBoxControl1.GetItemValue(idx) != null)
            {
                checkedListBoxControl1.SetItemChecked(idx, false);
                idx++;
            }
        }

第二个例子是遍历每个选项的Value

 

            int idx = 0;
            while (checkedListBoxControl1.GetItemValue(idx) != null)
            {
                object obj = checkedListBoxControl1.GetItemValue(idx);
                // 你要做的处理逻辑
                idx++;
            }
 
当然,如果你不是通过DataSource进行绑定,而是通过Items.add来添加的话,上面的问题就不会存在。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值