使用.net中的两个下拉列表来操作第三个下拉列表
本文关键字:下拉列表 操作 三个 net 使用 两个 | 更新日期: 2023-09-27 18:17:21
我正在使用c#在。net中编程,我有3个下拉列表。根据前两个下拉框的内容决定第三个下拉框的值。用户不能更改第三个,它是自动填充的。我们称这些下拉框为A、B和C。如果A选择了任何值,C自动获得一个值X。如果A是空的,B有任何值被选中,C的值是y,如果A被选中,B也被选中,C的值应该是x,因此,如果A有任何值,它就取代了B中的值,怎么做呢?我已经编程了一些事件,但我不知道如何使它,所以B需要在确定c的值之前检查A的检入内容。希望这听起来没有太混乱。
我假定这是针对WinForms的,因为您没有指定。您应该做的是为组合框使用SelectedIndexChanged
事件。然后,每当用户从comboBox1
或comboBox2
中选择某些内容时,清除comboBox3
。
this.comboBox1.SelectedIndexChanged += new EventHandler(this.comboBox1_SelectedIndexChanged);
this.comboBox2.SelectedIndexChanged += new EventHandler(this.comboBox2_SelectedIndexChanged);
// ...
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
// Choosing an item in comboBox1 will always replace the items in comboBox3
this.comboBox3.Items.Clear();
this.comboBox3.Items.Add(X);
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
// Only fill comboBox3 if the user hasn't chosen an item in comboBox1
if (this.comboBox1.SelectedItem == null)
{
this.comboBox3.Items.Clear();
this.comboBox3.Items.Add(Y);
}
}
- 当用户从
comboBox1
和comboBox2
中选择没有选择值的东西时,comboBox3
将包含X - 当用户从
comboBox2
和comboBox1
中选择没有选择值时,comboBox3
将包含Y - 当用户从
comboBox1
中选择了一些东西,并且用户已经从comboBox2
中选择了一些东西,那么comboBox3
将包含X - 当用户从
comboBox2
中选择了一些东西并且用户从comboBox1
中选择了一些东西时,那么comboBox3
将包含X