think&FMF
2021-07-14 14:55
采纳率: 100%
浏览 28

c#comboBox控件问题

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

img

  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • CSDN专家-showbo 2021-07-14 15:09
    已采纳

    最简单的添加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就可以了,通过构造函数传参。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题