c#comboBox控件问题

实现选中comboBox控件下拉栏的每一项都打开对应的窗体。

img

最简单的添加SelectedIndexChanged事件,switch ....case对比成功创建对应表单显示出来~

img

想简化SelectedIndexChanged需要用到反射,combobox绑定数据源,设置DisplayMember和ValueMember(Form类名称),获得ValueMember的值后通过反射创建类,有兴趣你可以研究下https://www.cnblogs.com/qulianqing/p/6842829.html


     
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            Form f = null;
            switch (comboBox1.Text)
            {
                case "Form1":
                    f = new Form1();
                    break;
                case "Form2":
                    f = new Form2();
                    break;
                case "Form3":
                    f = new Form3();
                    break;
               ///更加多case
            }
            if (f != null) f.Show();
        }

使用comboBox的change事件,在事件里面new Form就可以了,通过构造函数传参。