17607550499 发表于 2021-4-26 20:26

C# 如何实现combobox的双联动



从数据库中读取数据,在C#中怎样用comboBox实现联动菜单?比如在网上注册东西的时候,比如说你选择了一个省份,然后在下边的列表框中出现了一个这个省份的所有市的城市,怎么实现这种的联动效果?



X5ZJ 发表于 2021-4-26 20:38

方法较多
1)用2个combox,各存一个内容。通过selectedindex来同步
2)有个属性 可以同时设置2个属性,比如一个值 一个文本。
3)显示的文本通过index来判断或text判断。

hackgsl 发表于 2021-4-26 20:47

比较笨的方法(两个下拉框不多的时候)
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
switch (this.comboBox1.Text)
{
case "AA":
this.comboBox2.Items.Clear();
this.comboBox2.Items.Add("123");
this.comboBox2.Items.Add("456");
break;

case “BB”:
this.comboBox2.Items.Clear();
this.comboBox2.Items.Add("456");
this.comboBox2.Items.Add("789");
break;
default:
MessageBox.Show("出错了!");
break;
}

a952135763 发表于 2021-4-26 20:49

数据绑定前一个comboBox选中的时候给后面
一个comboBox绑定相应数据源就行了
你把结构定义得好不管几级都行

17607550499 发表于 2021-4-26 20:59

C:\Users\Administrator\Desktop

17607550499 发表于 2021-4-26 21:03

比如在网上注册东西的时候,比如说你选择了一个省份,然后在下边的列表框中出现了一个这个省份的所有市的城市

sghzlx 发表于 2021-4-26 21:09

我是这么做的
comboBox1    comboBox2   各自绑定一个数据源

comboBox1选择后触发comboBox2按选定内容为条件进行查询数据库,并生成菜单

17607550499 发表于 2021-4-26 21:36

sghzlx 发表于 2021-4-26 21:09
我是这么做的
comboBox1    comboBox2   各自绑定一个数据源



有源代码吗?

吾爱逍遥 发表于 2021-4-26 21:51

可以把combox1的内容做字典key,然后把对应的下属城市做值,combox2根据1所选的内容遍历字典存放combox2里面啊

lapangxe 发表于 2021-4-26 22:27

在第一个 Combobox 的 SelectedIndexChanged 事件中向 Combobox2 添加项。
页: [1] 2
查看完整版本: C# 如何实现combobox的双联动