如何获取winform中控件的ValueMember值!
如何获取winform中控件的ValueMember值!
今天,在使用CheckedListBox时,突然发现有些小问题:
1)VS2012无法感知:DisplayMember、ValueMember这两个属性
2)在获取里面的ValueMember这个属性时,竟费了些周折,因为,在查看属性时,总是提示
里面的数据元素是Object,看不到具体的类型。
在这里做个记录:
绑定时,可以直接绑定数据源,不用考虑为何不能感知:
1 this.chkList.DataSource=CommonHelper.rightDictionary.getAllRight();
2 this.chkList.DisplayMember = "rightname";
3 this.chkList.ValueMember = "rightcode";
在获取里面绑定的元素时,可以强类型转换一下,winform中的CheckedListBox中的数据元素是
DataRowView类型,所以可以如下获取:
for (int i = 0; i < this.chkList.Items.Count; i++)
{
DataRowView dv = ((DataRowView)chkList.Items[i]);
tempValue = dv["rightcode"].ToString();
if (dtRight.Select("rightID=" + tempValue).Length > 0)
e.Node.Checked = true;
}
转自:http://www.haodaima.net/art/1478448
浙公网安备 33010602011771号