日期:2014-05-17  浏览次数:20965 次

在DataGridView中将其中一列设置为combobox?
问题是这样的:我的DataGridView绑定的数据源是个学生表,其中的班级列保存的是班级序号,我现在想将这一列显示成从班级表中获取的班级名称,并且用下拉框显示。
我用下面的方法
DataGridViewComboBoxColumn cc = dataGridView1.Columns["banj"] as DataGridViewComboBoxColumn;//"banj"是学生表中的班级列。
cc.DataSource = ds.Tables[0];//班级表数据
            cc.DisplayMember = "banj";//班级表中的班级名称
            cc.ValueMember = "bianh";//班级表中的班级序号

            dataGridView1.Columns.Add(cc);
然后绑定数据源

提示错误:
---------------------------
未将对象引用设置到对象的实例
---------------------------
并且没有显示下拉框只是多了两列班级表数据
如下图:

求大神答惑!!!
datagridview combobox

------解决方案--------------------
首先把this.dataGridView1.AutoGenerateColumns = false;//自动生成列关闭。然后确保你手动添加的banj这一列是一个combobox类型。
------解决方案--------------------