winform中datagridview控件插入checkbox列,并在绑定数据是,修改当前行的checkbox的是否选中状态 如题,最好有详细的代码,或者发邮箱也行,[email protected] 在线等 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataGridViewCheckBoxColumn newColumn = new DataGridViewCheckBoxColumn();//添加CHECKBOX newColumn.HeaderText = "选择"; dataGridView2.Columns.Insert(0, newColumn); dataGridView2.MultiSelect = true; newColumn.InheritedStyle.Alignment = DataGridViewContentAlignment.TopCenter; newColumn.Width = 35; this.dataGridView2.VirtualMode = false;判断if(修改){checkbox.check=true;绑定();}???? http://www.codeproject.com/KB/grid/SelectAll.aspx if语句那,假如数据源是一个dataset 楼主是动态加checkbox列吗? 是的,除了添加完之后,还要通过当前记录的bool字段来决定checkbox的勾选与不勾选的状态 无语了,连if都不会写吗?比如数据源是datatable,列"AA"是标记列for (int i =0;i<datagridview.rows.count;i++){if(ds.table["表名"].rows[i]["AA"] == 1){datagridview.rows[i].colums["checkbox所在列"] = true;//你的条件}} 没人指点了么,插入checkbox列后,怎么通过bool字段修改当前行的checkbox的勾选状态 你的代码能执行么?我在本地没有通过,而且datagridview.rows[i]有colums这个属性么? 添加了checkedbox列后直接绑定当前记录的bool字段就行了,不会判断 不用再判断,直接把对应的bool字段绑定到checkedbox列就可以了 抱歉技术不是太好,能否把绑定的代码写给我,我是winform中开发的 datagridview.rows[i].cells["checkbox所在列"] = true;不要指望自己什么都不动,复制粘帖就能直接通过调试. 看来你好像误会了,上面说的几个方法(包括你的),我在问之前就试过了,都不成功,不知道是在创建的checkbox列时属性设置错误,还是另外有什么写法,我就是弄不出来了,才这么不厌其烦的问啊 这是我自己找到的代码,已测试通过,发上来大家分享 DataColumn colisChecked = new DataColumn("isChecked"); colisChecked.DefaultValue = false; Dt.Columns.Add(colisChecked); for (int i = 0; i < Dt.Rows.Count; i++) { if (Dt.Rows[i]["FAffirm"].ToString() == "True") { Dt.Rows[i]["isChecked"] = true; } } dataGridView1.DataSource = Dt; foreach (DataGridViewRow dgr in DataGridView1.Rows) dgr.Cells["a"].Value = (dgr.Rows[i].Cells["a"].Value.ToString()=="1" ? 1 : 0);foreach (DataGridViewRow dr in this.dataGridView1.Rows) { DataGridViewCheckBoxCell cbx = (DataGridViewCheckBoxCell)dr.Cells[0]; if (!(bool)cbx.FormattedValue) { //dr.Cells[1]; } } foreach(datagridviewrow r in datagridview1.rows){ datagridviewcheckboxcell c=(datagridviewcheckboxcell)r.cells[0]; c.checked=true;} DataGridViewCheckBoxColumn newColumn = new DataGridViewCheckBoxColumn();//添加CHECKBOX newColumn.HeaderText = "选择"; dataGridView2.Columns.Insert(0, newColumn); dataGridView2.MultiSelect = true; newColumn.InheritedStyle.Alignment = DataGridViewContentAlignment.TopCenter; newColumn.Width = 35; this.dataGridView2.VirtualMode = false;判断if(修改){checkbox.check=true;绑定();}???? “NationalInstruments.Analysis.Math.Statistics”的类型初始值设定项引发异常。 C#获取tabControl里控件ID 关于C#线程问题,请大虾们帮忙解决 好长时间没登录的,散分。 C#的多线程问题 DataGridView选中某一行 随机抽题软件(C#) 如何将一个数组中的一部分值赋给另一个数组 讨论帖!david_anwei(家九)来下!关于刚才的帖子!大家都来!david_anwei(家九) 数据同步的问题 [VS扩展开发相关]如何操作代码编辑框内光标的位置? C# 如何在数据处理没结束时发消息给线程
newColumn.HeaderText = "选择";
dataGridView2.Columns.Insert(0, newColumn);
dataGridView2.MultiSelect = true;
newColumn.InheritedStyle.Alignment = DataGridViewContentAlignment.TopCenter;
newColumn.Width = 35;
this.dataGridView2.VirtualMode = false;
判断if(修改)
{
checkbox.check=true;
绑定();
}????
比如数据源是datatable,列"AA"是标记列
for (int i =0;i<datagridview.rows.count;i++)
{
if(ds.table["表名"].rows[i]["AA"] == 1)
{
datagridview.rows[i].colums["checkbox所在列"] = true;//你的条件
}
}
datagridview.rows[i].cells["checkbox所在列"] = true;不要指望自己什么都不动,复制粘帖就能直接通过调试.
DataColumn colisChecked = new DataColumn("isChecked");
colisChecked.DefaultValue = false;
Dt.Columns.Add(colisChecked);
for (int i = 0; i < Dt.Rows.Count; i++)
{
if (Dt.Rows[i]["FAffirm"].ToString() == "True")
{
Dt.Rows[i]["isChecked"] = true;
}
}
dataGridView1.DataSource = Dt;
dgr.Cells["a"].Value = (dgr.Rows[i].Cells["a"].Value.ToString()=="1" ? 1 : 0);
foreach (DataGridViewRow dr in this.dataGridView1.Rows)
{
DataGridViewCheckBoxCell cbx = (DataGridViewCheckBoxCell)dr.Cells[0];
if (!(bool)cbx.FormattedValue)
{
//dr.Cells[1];
}
}
foreach(datagridviewrow r in datagridview1.rows)
{
datagridviewcheckboxcell c=(datagridviewcheckboxcell)r.cells[0];
c.checked=true;
}
newColumn.HeaderText = "选择";
dataGridView2.Columns.Insert(0, newColumn);
dataGridView2.MultiSelect = true;
newColumn.InheritedStyle.Alignment = DataGridViewContentAlignment.TopCenter;
newColumn.Width = 35;
this.dataGridView2.VirtualMode = false;
判断if(修改)
{
checkbox.check=true;
绑定();
}????