DataGridViewComboBoxColumn列为空
本人想将数据库里的表SAC_HB通过winform的datagridview显示出来。这个表里有一列SHANCHUBIAOZHI,该列类型为int,值范围是0(normal)或1(deleted )。值范围是0对应normal,1对应deleted存在数据表T_isDeleted中。运行该程序显示SHANCHUBIAOZHI为空,在数据库的SAC_HB表的SHANCHUBIAOZHI列是有值的,全为0;请问各位高手如何在SHANCHUBIAOZHI(DataGridViewComboBoxColumn )的列中显示值deleted 和normal?private void Form2_Load(object sender, EventArgs e)
{
try
{ dataGridView1.AllowUserToAddRows = false;
dataGridView1.AutoGenerateColumns = false;
using (SqlConnection sqlconn = new SqlConnection("Data Source = .\\SQLEXPRESS;Initial Catalog = AA;User Id = AA;Password = AA;"))
{
string sql1 = "select * from dbo.SAC_HB";
string sql2 = "select ColValue,ColName from dbo.T_isDeleted";
DataGridViewComboBoxColumn dgvComboBoxColumn = dataGridView1.Columns[20] as DataGridViewComboBoxColumn;
dgvComboBoxColumn.DataPropertyName = "ColValue";
dgvComboBoxColumn.DataSource = GetTable(sql2).DefaultView;//必须在设置dataGridView1的DataSource的属性前设置
dgvComboBoxColumn.DisplayMember = "ColName";
dgvComboBoxColumn.ValueMember = "ColValue";
dataGridView1.DataSource = GetTable(sql1).DefaultView;//一定要在dgvComboBoxColumn的DataSource后设置
}
}
catch
{ }
}
dataGridView ComboBoxColumn ; 数据库 --------------------编程问答-------------------- 运行效果:
--------------------编程问答-------------------- 另外一个函数:
private DataTable GetTable(string sql)
{
using (SqlConnection sqlconn = new SqlConnection("Data Source = .\\SQLEXPRESS;Initial Catalog = AA;User Id = AA;Password = AA;"))
{
DataTable dt = new DataTable();
SqlDataAdapter sqlda = new SqlDataAdapter(sql, sqlconn);
sqlda.Fill(dt);
return dt;
}
} --------------------编程问答-------------------- dataGridView1.DataBind();写了吗? --------------------编程问答--------------------
楼上的,vs2008就没有DataBind这个函数~ --------------------编程问答--------------------
看错了,以为你的那是B/S的,WinForm确实是没有 --------------------编程问答--------------------
dataGridView1.DataBind();写了吗?
楼上的,vs2008就没有DataBind这个函数~
看错了,以为你的那是B/S的,WinForm确实是没有
还是谢谢你~ --------------------编程问答-------------------- 在dgv的cellformatting事件里写
判断如果是0 e.value = '你想显示的值'
补充:.NET技术 , C#