大家好,
我刚刚在使用ComboBox控件的时候,碰到个问题,咨询下大家,会的就慷慨告诉我下吧。
我先把数据对象绑定到ComboBox控件上,然后要获取我选择项的数据对象(注意:该项数据不只一条信息)
我该如何做呢?
TIP:效果和树控件一样,我可以使用 树控件名.SelectNod.Tag 取出该对象的信息。
另外我补充一下,我肯定是尝试了很多方法不行才来求助的,没有测试过或没有该经验的的童鞋就别来纸上谈兵了,给我希望就不要让我失望。
我获取数据是为了显示该数据对象中名次,假如我的该数据对象中存有2个字段信息吧(ID,NAME),绑定显示该NAME,并绑定数据对象;
选择获取该项,是为了获取ID。
IDictionary<string,User> users...
comboBox.DataSource=users.Values;
comboBox.ValueField="ID";
User u=users[comboBox.SelectedValue]
换种方式应该可以吧(纸上谈兵,不方便测试。。。)
我自己重写了一个对象,类似键值对,但不是;只不过你给了我灵感了。
@失落の熊熊:
:)
ComboBox 有 SelectedValue , 这个也可以是任意类型。
你要实现的功能是不是这个样子的???==>>(JQuery zTree v3.4插件)
或者 就是一个普通的 DropDownList
只是说选中的 是显示的Text文本,也就是所说的Name值
实际获取的是 Value值,也就是所说的ID值
数据绑定 DropDownList 的时候
你可以指定 DataTextValue
DropDownList的ID为::ddlRange
ddlRange.DataSource = DataSet;// 你要绑定的数据集
ddlRange.DataTextField = ""; //-->> ddlRange.DataTextField = "Name";
ddlRange.DataValueField = "";//-->> ddlRange.DataTextField = "ID";
ddlRange.DataBind();
用的时候::
Text值的获取:: ddlRange.SelectedItem.Text;
Value值的获取:: ddlRange.SelectedValue;
首先我上面举的例子(ID,NAME)只是一个例子而已,真实的数据可不止只几个字段,我要使用的也不止ID一个字段;(对象的概念)
其次我的环境是WINFORM,DROPDOWNLIST和COMBOBOX控件两者之间还是有点区别的。
ComboBox可以直接编辑时,只有TEXT属性有效,SelectValue是无效的。
只有把ComboBox的编辑功能去掉(在属性里设置一下),SelectValue才有效