因为列需要动态从数据库中获取,所以采用了动态添加的方法添加datagridview的列,下面是代码:
dtJobType = sub.GetJobTypeList(1);
            for (int i = 0; i < dtJobType.Rows.Count; i++)
            {
                Application.DoEvents();
                int intCCount = dgvList1.Columns.Count - 3;
                if (intCCount < 0) intCCount = 0;
                DataRow dr=dtJobType.Rows[i];
                DataGridViewColumn dgvc = new DataGridViewTextBoxColumn();
                dgvc.HeaderText = dr["fdTypeName"].ToString();
                dgvc.ValueType = System.Type.GetType("String");
                dgvc.Width = 50;
                dgvc.Name = "c" + dr["fdID"].ToString();
                dgvList1.Columns.Insert(intCCount, dgvc);
            }添加以后,获取Datagridview要显示的数据,采用的是循环添加行的方法(不是绑定),如果不对程序添加的列进行操作的话,数据可以正常显示,但是一旦对程序添加的列进行操作(比如读取或计算)时,就会出现错误:未将对象引用设置到对象的实例。
这是为什么?