代码改变世界

如何获取winform中控件的ValueMember值!

2012-06-02 13:58  Jeffery Tao  阅读(1795)  评论(0)    收藏  举报

  今天,在使用CheckedListBox时,突然发现有些小问题:

1)VS2012无法感知:DisplayMember、ValueMember这两个属性

在这里做个记录:

绑定时,可以直接绑定数据源,不用考虑为何不能感知:

1 this.chkList.DataSource=CommonHelper.rightDictionary.getAllRight();
2 this.chkList.DisplayMember = "rightname";
3 this.chkList.ValueMember = "rightcode";

在获取里面绑定的元素时,可以强类型转换一下,winform中的CheckedListBox中的数据元素,我绑定的数据源是

rightModel类型,所以可以如下获取:

 

            for (int i = 0; i < this.chkList.Items.Count; i++)
            {
                rightModel dv = ((rightModel)chkList.Items[i]);
                tempValue = dv.Rightcode;
                if (dtRight.Select("rightID=" + tempValue).Length > 0)
                    e.Node.Checked = true;
            }