問題:DataGridViewButtonColumn()在datagridview中創建按鈕列,如何設置按鈕的背景顏色(不是單元格的背景顏色)。
回答:可以在dataGridView1_CellPainting事件里面處理。
private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) { if (e.ColumnIndex == 0)//索引0 { e.Handled = true; using (SolidBrush brush = new SolidBrush(Color.Red)) { e.Graphics.FillRectangle(brush, e.CellBounds); } ControlPaint.DrawBorder(e.Graphics, e.CellBounds, Color.Yellow, ButtonBorderStyle.Outset); } if (e.ColumnIndex == 1)//索引1 { e.Handled = true; using (SolidBrush brush = new SolidBrush(Color.BlueViolet)) { e.Graphics.FillRectangle(brush, e.CellBounds); } ControlPaint.DrawBorder(e.Graphics, e.CellBounds, Color.Yellow, ButtonBorderStyle.Outset); } }
效果:

