对dataGridView指定列相同单元格合并
2021-01-23 23:14
标签:datagrid grid graphic null orm 合并 amp GridView wstring //写在dataGridView1控件的CellPainting事件中 对dataGridView指定列相同单元格合并 标签:datagrid grid graphic null orm 合并 amp GridView wstring 原文地址:https://www.cnblogs.com/zhujie-com/p/12065689.html
if (e.ColumnIndex==0 && e.RowIndex!=-1 || e.ColumnIndex==1 && e.RowIndex!=-1)//对第1列和第2列相同单元格进行合并
{
Brush datagridBrush=new SolidBrush(dataGridView1.GridColor);
SolidBrush grouplinebBrush =new SolidBrush(e.CellStyle.BackColor);
using (Pen datagridlinePen=new Pen(datagridBrush))
{
e.Graphics.FillRectangle(grouplinebBrush,e.CellBounds);
if (e.RowIndex
e.Graphics.DrawLine(datagridlinePen,e.CellBounds.Left,e.CellBounds.Bottom-1,e.CellBounds.Right,e.CellBounds.Bottom-1);
e.Graphics.DrawLine(datagridlinePen,e.CellBounds.Right-1,e.CellBounds.Top,e.CellBounds.Right-1,e.CellBounds.Bottom);
}
else
{
e.Graphics.DrawLine(datagridlinePen,e.CellBounds.Right-1,e.CellBounds.Top,e.CellBounds.Right-1,e.CellBounds.Bottom);
} if (e.RowIndex==dataGridView1.Rows.Count-1)
{
e.Graphics.DrawLine(datagridlinePen,e.CellBounds.Left,e.CellBounds.Bottom-1,e.CellBounds.Right,e.CellBounds.Bottom-1);
}
if (e.Value!=null)
{
if (!(e.RowIndex>0 && dataGridView1.Rows[e.RowIndex-1].Cells[e.ColumnIndex].Value.ToString()==e.Value.ToString()))
{
e.Graphics.DrawString(e.Value.ToString(),e.CellStyle.Font,Brushes.Black,e.CellBounds.X+2,e.CellBounds.Y+5,StringFormat.GenericDefault);
}
}
e.Handled = true;
}
}
文章标题:对dataGridView指定列相同单元格合并
文章链接:http://soscw.com/index.php/essay/46078.html