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

DataGridViewComBoxCell 值无效(Winform中)
我在winform窗体中用DataGridView中绑定一个表中的Id和Sex字段,sex字段我用下拉类型来显示,在sql2005数据库里面不报DataGridViewComBoxCell 值无效的错误,但是在sql2000里面我怀疑是数据库字段类型的错误,想彻底解决这个问题,我的思路是将往DataGridView中添加DataGridViewComboBoxColumn类型的列,把字段sex绑定在这个列上,目前存在的问题的是:需要这个DataGridViewComboBoxCell显示的是数据库中的值,请问哪位解决过这个问题,帮忙解决下,谢谢。

------解决方案--------------------
不知道是不是楼主要的结果: 
DataGridViewComboBoxColumn co_sex = new DataGridViewComboBoxColumn();
co_sex.DataPropertyName = "Sex";
co_sex.HeaderText = "性别";
DataTable dt = new DataTable();
dt.Columns.Add("sexname");
dt.Columns.Add("sexvalue");
DataRow dr = dt.NewRow();
dr[0] = "男";
dr[1] = "男";//与数据库中的值对应
dt.Rows.Add(dr);
DataRow dr1 = dt.NewRow();
dr1[0] = "女";
dr1[1] = "女";//与数据库中的值对应
dt.Rows.Add(dr1);

co_sex.DataSource = dt;
co_sex.ValueMember = "sexvalue";
co_sex.DisplayMember = "sexname";

this.dgUser.Columns.Add(co_sex);