필자는 winforms dataGridView에서 단일 셀의 배경색을 변경하는 방법을 절실히 모색하려고합니다. 두 개의 열이 있습니다. 두 번째 열의 내용을 변경하면이 행의 첫 번째 열에있는 셀에 따라 배경이 적절하게 변경됩니다.windows.forms.datagrid에서 단일 셀의 배경색을 변경하는 방법은 무엇입니까?
private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
if (e.ColumnIndex != 0 || e.RowIndex == -1)
return;
if (dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString() == "Red")
e.CellStyle.BackColor = Color.Red;
else
e.CellStyle.BackColor = Color.White;
}
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex != 1 || e.RowIndex == -1)
return;
// dataGridView1.Rows[e.RowIndex].Cells[0]. ???
}
첫 번째 이벤트 핸들러는 첫 번째 열의 셀의 backColor를 그릴 경우 그 셀의 backColor를 설정합니다. 두 번째 이벤트 처리기는 값이 변경된 경우 첫 번째 셀에 페인트하도록 지시해야합니다. 열 너비를 변경하면 올바른 색으로 칠하므로 첫 번째 처리기가 작업을 수행합니다. 그러나 세포 그림을 방아쇠를 당기는 방법?
고맙습니다.
정확하게 내가 찾고있는 내용입니다. 고맙습니다. –