要选完3个combox的值后,才会出结果,但条件太多了if else如何简化,如何有利于以后的修改

图片说明

 private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            if (comboBox3.Text == "我")
            {
                if (comboBox2.Text == "1")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "a";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "b";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "c";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "2")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "d";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "e";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "f";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "3")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "h";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "i";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "g";
                        }
                    }
                }

            }
            //combox3换值
            else if (comboBox3.Text == "你")
            {
                if (comboBox2.Text == "1")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "k";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "l";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "m";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "2")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "n";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "o";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "p";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "3")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "q";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "r";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "s";
                        }
                    }
                }
            }
            //combox3换值
            else if (comboBox3.Text == "他")
            {
                if (comboBox2.Text == "1")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "t";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "u";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "v";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "2")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "w";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "x";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "y";
                        }
                    }
                }
                //combox2换值
                else if (comboBox2.Text == "3")
                {
                    if (comboBox1.Text == "CHR1")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "z";
                        }
                    }
                    else if (comboBox1.Text == "2")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "A";
                        }
                    }
                    else if (comboBox1.Text == "3")
                    {
                        if (flag == true)//如果按钮被点击
                        {
                            textBox1.Text = "B";
                        }
                    }
                }
            }
                        }

如上图所示,一共有27种情况,若每个下拉框有7个值可选,那就有343种情况,而且ifelse不利于对扩展开,对修改闭,请各位大神帮忙看看

首先你这个最终的结果是做什么用的我不清楚。不过给你一个我的思路,你这个说的是需要三个都选中之后才能够出现结果,是不是三级的数值都需要还是怎么样,你可以写combox的时候设计成树形关系每一级的id都是上一级和本级的拼接,这样当你选中最后一级的时候,获得这个最后一级的id就可以知道之前哪些级被选中了啊,不知道这个是不是你要的结果

666 如此多的if我会用switch 专门搞个类做判断(新手回答完毕)

不知道你想得出的结果有没有什么规律,如果有规律的话,就比如你例子上这样,是a-z-A-Z 也就是26个字母大小写循环,比如你第一个按的顺序是2 第二个按钮是3 第三个是1,你只要算出是第几个字母