当前位置:编程学习 > C#/ASP.NET >>

combox联动问题

有一个数据源是 dictionary  ,比如是
{a,1}
{b,1}
{c,2}
{d,3}
{e,3}
类似
------

我想实现两个combox,分别为combox1,combox2
我想得到的效果是:
1,combox1显示所有的key值
2,combox2显示value值(不重复)
当选择combox2中的值,显示对应的key值。比如在combox2中选  1,combox1则显示 a,b
如何实现以上代码啊? 写详细点哦,我是新手刚学
谢谢了。 --------------------编程问答--------------------
 Dictionary<string, string> dic = new Dictionary<string, string>();
        private void Form1_Load(object sender, EventArgs e)
        {
            dic.Add("a","1");
            dic.Add("b","2");
            dic.Add("c","3");
            dic.Add("d","4");
            dic.Add("e","5");

            foreach (string key in dic.Keys)
                comboBox1.Items.Add(key);

            foreach (string value in dic.Values)
                comboBox2.Items.Add(value);
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            comboBox2.Text = dic[comboBox1.Text].ToString();
        }
--------------------编程问答-------------------- 还有下面是你要的


        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            foreach (var d in dic)
            {
                if (d.Value == comboBox2.Text)
                    comboBox1.Text = d.Key;
            }
        }
--------------------编程问答--------------------
引用 2 楼 zhurcn 的回复:
还有下面是你要的C# code?12345678        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)        {            foreach (var d in dic)            {                if (d.Value ……


if下面是什么意思呢? --------------------编程问答--------------------
引用 3 楼 leon460 的回复:
引用 2 楼 zhurcn 的回复:还有下面是你要的C# code?12345678        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)        {            foreach (var d in dic)            {          ……
不是你要的结果吗,通过选择comboBox2的联动显示comboBox1的值,你要的通过value(comboBox2中的值)获得key(comboBox1中的值)。 --------------------编程问答-------------------- 按照意思,应该是选择combobox2的值时,combobox1重新绑定数据? --------------------编程问答--------------------
引用 5 楼 llxaphy1314 的回复:
按照意思,应该是选择combobox2的值时,combobox1重新绑定数据?
联动而已,已经绑定了,只需要选择你之前绑定中的一个值就可以了;不然前面绑定的就没意义,还不如不绑定然后每次选择时赋值。 --------------------编程问答--------------------
引用 6 楼 zhurcn 的回复:
引用 5 楼 llxaphy1314 的回复:
按照意思,应该是选择combobox2的值时,combobox1重新绑定数据?联动而已,已经绑定了,只需要选择你之前绑定中的一个值就可以了;不然前面绑定的就没意义,还不如不绑定然后每次选择时赋值。


联动,这样是就可以了,但明显LZ要显示的是对应的一系列东西,不是只是显示一个值而已 --------------------编程问答--------------------
引用 7 楼 llxaphy1314 的回复:
引用 6 楼 zhurcn 的回复:引用 5 楼 llxaphy1314 的回复:
按照意思,应该是选择combobox2的值时,combobox1重新绑定数据?联动而已,已经绑定了,只需要选择你之前绑定中的一个值就可以了;不然前面绑定的就没意义,还不如不绑定然后每次选择时赋值。

联动,这样是就可以了,但明显LZ要显示的是对应的一系列东西,不是只是显示一个值而已
……
你去找下资料看下联动情况是怎么样的,我这个已经实现了。。。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,