前言:小编这块GridControl控件绑定的数据源是 DataTable,所以,就拿DataTable来演示功能!
一、创建选择列。
//1.添加复选框
dt.Columns.Add("选择", typeof(bool));
//2.设置复选框位置
dt.Columns["选择"].SetOrdinal(0);
int j = 0;
//3.复选框赋予初始值 false
foreach (DataRow dr in dt.Rows)
{
dr["选择"] = false;
}
按照上面的代码,就创建好选择框列了!
二、全选
1.控件自带的所视行全选
//前提;支持多选
//gridView1.OptionsSelection.MultiSelect = true;
//全选
gridView1.SelectAll();
2.自定义选择框列全选
this.gridView1.FocusedRowHandle = -1;//失去焦点
//1.通过行数,确定存在数据,若列数小于1,直接弹窗返回
if (this.gridView1.RowCount < 1)
{
return;
}
//2.取得容器内的数据
DataView dv = this.gridView1.DataSource as DataView;
DataTable dt = dv.Table;
//3.循环遍历依次选择
foreach (DataRow dr in dt.Rows)
{
dr["选择"] = true;
}
三、取消全选
1.控件自带的所视行全选
//前提;支持多选
gridView1.OptionsSelection.MultiSelect = true;
//取消全选
gridView1.ClearSelection();
2.自定义选择框列全选
this.gridView1.FocusedRowHandle = -1;//失去焦点
//1.通过行数,确定存在数据,若列数小于1,直接弹窗返回
if (this.gridView1.RowCount < 1)
{
return;
}
//2.取得容器内的数据
DataView dv = this.gridView1.DataSource as DataView;
DataTable dt = dv.Table;
//3.循环遍历依次取消选择
foreach (DataRow dr in dt.Rows)
{
dr["选择"] = false;
}
四、反选
this.gridView1.FocusedRowHandle = -1;//失去焦点
//1.通过行数,确定存在数据,若列数小于1,直接弹窗返回
if (this.gridView1.RowCount < 1)
{
return;
}
//2.取得容器内的数据
DataView dv = this.gridView1.DataSource as DataView;
DataTable dt = dv.Table;
//3.循环遍历依次判断选择或取消选择
foreach (DataRow dr in dt.Rows)
{
if ((bool)dr["选择"])
{
dr["选择"] = false;
}
else
{
dr["选择"] = true;
}
}