C# 里comBox 显示值和实际值如何获取

this.cmbCon.DisplayMember="Name";this.cmbCon.ValueMember="Val";this.cmbCon.Items.Add(... this.cmbCon.DisplayMember = "Name";
this.cmbCon.ValueMember = "Val";

this.cmbCon.Items.Add(new ListItem("等于", "="));
this.cmbCon.Items.Add(new ListItem("包含", "like"));
ListItem是我自己自定义的一个类,里面的两个变量分别为Val 和 Name

然后绑定完之后,combox里确实显示了“等于 包含”这两项
但是我 comBox.selectValue 或者 .selectedText 都没有任何输出
comBox.selectedItem.ToString()才有输出,我重写了ListItem类的ToString方法,返回Name的值
SelectedIndex也有输出

求帮助!
展开
 我来答
lrh3321
2015-03-29 · TA获得超过2183个赞
知道大有可为答主
回答量:2296
采纳率:75%
帮助的人:2122万
展开全部

用法错了

            this.cmbCon.DisplayMember = "Name";
            this.cmbCon.ValueMember = "Val";

            System.Collections.ArrayList array = new System.Collections.ArrayList();
            array.Add(new ListItem("等于", "="));
            array.Add(new ListItem("包含", "like"));
            this.cmbCon.DataSource = array;

相关阅读:

https://msdn.microsoft.com/zh-cn/library/system.windows.forms.listcontrol.valuemember(v=vs.110).aspx

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
freeeeeewind
2015-03-29 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1354万
展开全部
   private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            // 强制转换:将所选中的Item转换为ListItem
            ListItem item = (ListItem)comboBox1.SelectedItem;
            // 取值
            string s1 = item.Name;
            string s2 = item.Val;
        }
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友01b12fe7d
2015-03-29 · TA获得超过658个赞
知道大有可为答主
回答量:2649
采纳率:63%
帮助的人:642万
展开全部
文本和值分别来就行了 重新了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式