comboBox绑定字典Dictionary 获取value中的值

第一种 最简洁的方法

Dictionary<string, string> list = new Dictionary<string, string> { {"this is i1", "001"}, {"this is i2", "002"} };

private void Form1_Load(object sender, EventArgs e) {

comboBox1.Items.AddRange(list.Keys.ToArray());

}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) {

string a = list[comboBox1.SelectedText];

textBox1.Text = a;

}

 

第二种 笨点的方法

绑定数据

private void Form1_Load(object sender, EventArgs e) {

var list = new Dictionary<string, string> { {"this is i1", "001"}, {"this is i2", "002"} };

comboBox1.Items.AddRange(new object[] {list.ToArray()});

comboBox1.DisplayMember = "key";

comboBox1.ValueMember = "value";

}


//绑定数据 以上方法失效用这个方法
Dictionary<string, string> dict = new Dictionary<string, string> {{"baidu.com", "百度"}, {"goolge.com", "谷歌"}, {"qq.com", "腾讯"}};
comboBox1.DataSource = new BindingSource(dict, null);
comboBox1.ValueMember = "Key";//文本对应的值
comboBox1.DisplayMember = "Value";//显示的文本

获取值

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) {

string a = ((KeyValuePair<string, string>)comboBox1.SelectedItem).Value;

textBox1.Text = a;

}

 

posted @   simadi  阅读(815)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2016-03-03 git bash 出现vim的时候怎么退出
点击右上角即可分享
微信分享提示