zoukankan      html  css  js  c++  java
  • winfrom动态生成的combox控件 绑定数据源之后 无法设置默认值问题

    原代码:

     List<student> ls = new List<student>();
                student st = null;
                for (int i = 0; i < 10; i++)
                {
                    st = new student();
                    st.Id = i.ToString();
                    st.Name = "zj"+i;
                    ls.Add(st);
                }
                cl = new ComboBox();
                ((ComboBox)cl).DataSource = ls;
                ((ComboBox)cl).ValueMember = "id";
                ((ComboBox)cl).DisplayMember = "name";
                (cl as ComboBox).SelectedIndex = 7;
                this.Controls.Add(cl);

    // 这样写之后 当程序运行到   (cl as ComboBox).SelectedIndex = 7;时报错。跟踪下cl为空。明明已经绑定了,怎么还是为空呢。

    改进之后:

         List<student> ls = new List<student>();
                student st = null;
                for (int i = 0; i < 10; i++)
                {
                    st = new student();
                    st.Id = i.ToString();
                    st.Name = "zj"+i;
                    ls.Add(st);
                }
                cl = new ComboBox();
                ((ComboBox)cl).DataSource = ls;
                ((ComboBox)cl).ValueMember = "id";
                ((ComboBox)cl).DisplayMember = "name";
                this.Controls.Add(cl);
                (cl as ComboBox).SelectedIndex = 7;

    //仔细观察,把   (cl as ComboBox).SelectedIndex = 7;放到 this.Controls.Add(cl);之后就可以了,结果运行正常。

  • 相关阅读:
    2013上半年学习目录
    《linux c编程指南》学习手记4
    Oracle二三事之 Oracle SPARC SuperCluster的九大技术优势
    《linux c编程指南》学习手记5
    Oracle二三事之 数据迁移注意事项
    《linux c编程指南》学习手记3
    在IIS中实现JSP
    为什么匿名内部类参数必须为final类型
    sql server和mysql变量赋值的区别 以及 MySql Declare
    android上传文件到服务器
  • 原文地址:https://www.cnblogs.com/zjBoy/p/2671685.html
Copyright © 2011-2022 走看看