首先,我们要添加一个复选框的列:
代码如下:
private void dgv_DataSourceChanged(object sender, EventArgs e)
{
GridColumn column = this.dgv.Columns.ColumnByFieldName(“ISCheck”);
if (column != null)
{
column.Width = 38;
column.OptionsColumn.ShowCaption = false;
column.ColumnEdit = new RepositoryItemCheckEdit();
}
}
private bool m_checkStatus = false;
private void dgv_CustomDrawColumnHeader(object sender, DevExpress.XtraGrid.Views.Grid.ColumnHeaderCustomDrawEventArgs e)
{
if (e.Column != null && e.Column.FieldName == “ISCheck”)
{
e.Info.InnerElements.Clear();
e.Painter.DrawObject(e.Info);
DevControlHelper.DrawCheckBox(e, m_checkStatus);
e.Handled = true;
}
}
private void dgv_Click(object sender, EventArgs e)
{
if (DevControlHelper.ClickGridCheckBox(this.dgv, "ISCheck", m_checkStatus))
{
m_checkStatus = !m_checkStatus;
}
}
在Dev Grid中,通过添加一个复选框列并定制画表头,实现表头上方的全选按钮功能。在`dgv_DataSourceChanged`事件中设置列宽、隐藏列名并设置RepositoryItemCheckEdit作为列编辑器。在`dgv_CustomDrawColumnHeader`事件中,检查字段名为'ISCheck'的列,并绘制复选框,以显示全选状态。

219

被折叠的 条评论
为什么被折叠?



