先看图
我想用checkbox表示 1的话 checkbox就选中 否则就不选择!(在不改变数据库字段类型的情况下)百度 Google上都输追加checkbox的方法 我想直接显示成checkbox 不是1 或0
注意是winform
我想用checkbox表示 1的话 checkbox就选中 否则就不选择!(在不改变数据库字段类型的情况下)百度 Google上都输追加checkbox的方法 我想直接显示成checkbox 不是1 或0
注意是winform
foreach (DataGridViewRow dr in this.dataGridView1.Rows)
{
DataGridViewCheckBoxCell cbx = (DataGridViewCheckBoxCell)dr.Cells[0];
if (!(bool)cbx.FormattedValue)
{
DataGridViewCheckBoxCell.Value = true;
}
}
{
DataGridView view = dataGridView1; DataTable dt = new DataTable();
dt.Columns.Add("name");
dt.Columns.Add("a");
dt.Columns.Add("s");
dt.Columns.Add("d");
dt.Columns.Add("f");
dt.Rows.Add("ssasss","1","0","0","1");
dt.Rows.Add("sdfa", "0", "0", "1", "1");
dt.Rows.Add("ssggdss", "1", "0", "0", "1");
dt.Rows.Add("sshfdhfdss", "1", "1", "0", "0");
dt.Rows.Add("ssskjfgs", "1", "0", "1", "0");
view.Columns.Add(new DataGridViewColumn(new DataGridViewTextBoxCell()));
view.Columns.Add(new DataGridViewColumn(new DataGridViewCheckBoxCell()));
view.Columns.Add(new DataGridViewColumn(new DataGridViewCheckBoxCell()));
view.Columns.Add(new DataGridViewColumn(new DataGridViewCheckBoxCell()));
view.Columns.Add(new DataGridViewColumn(new DataGridViewCheckBoxCell())); view.Rows.Add(dt.Rows.Count-1);
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int j = 0; j < dt.Columns.Count; j++)
{
if (j == 0)
view.Rows[i].Cells[j].Value = dt.Rows[i][j].ToString();
else
view.Rows[i].Cells[j].Value =dt.Rows[i][j].ToString()=="1"? true:false;
}
}
}
DataGridVIew禁止自动生成列。
然后手动添加所有显示列,这是可以选择DataGridViewCheckBoxColumn,之后与字段绑定
dataGridView1.Columns["列名"].DataPropertyName = "数据字段名";