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

Datagridview中加入CheckBox控件可以吗?
我想要做这样一种效果:
DataGridView绑定了一个只有一列的DataTable,该列的类型为int;
而DataGridView显示的时候显示两列,一列是DataTable有的内容,另一列中是CheckBox控件;
界面上还有一个按钮用于求和;
求和的方法是有选择的求和,只有CheckBox被勾选的那行中的数据才会被计算进来。
希望能提供一种比较详细的方案。

------解决方案--------------------
将DataGridView第一列的ColumnType设置成DataGridViewCheckBoxColumn,第2列为要累加的内容:
C# code

Decimal sum = 0;

for (int i = 0; i < grdDetail.RowCount; i++)
{
    if (grdDetail[0, i].Value == True)
    {
        sum = sum + Decimal.Parse(grdDetail[1, i].Value.ToString());
    }
}

------解决方案--------------------
这些代码窗体设计器里面有的
DataGridViewColumn col = new DataGridViewCheckBoxColumn();
this.dataGridView1.Columns.Add(col);
------解决方案--------------------
可以,回答完毕。楼下保持队型。
------解决方案--------------------
如果原来已经有了其他类型的列想替换的话可以这样
DataGridViewColumn col = new DataGridViewCheckBoxColumn();
this.dataGridView1.Columns.RemoveAt(0);
this.dataGridView1.Columns.Insert(0, col);
------解决方案--------------------
探讨
如果原来已经有了其他类型的列想替换的话可以这样
DataGridViewColumn col = new DataGridViewCheckBoxColumn();
this.dataGridView1.Columns.RemoveAt(0);
this.dataGridView1.Columns.Insert(0, col);