2015-07-10 3 views
1

Я хочу изменить обратную сторону ячейки в datagridview, пока наведите курсор мыши на определенную ячейку.datagridview cell mouse hover backcolor change

Попробовал код:

private void dataGridView_whateventwillcomehere(object sender, DataGridViewCellEventArgs e) 
     { 

     } 

ответ

7

Попробуйте это на CellMouseMove Event

private void dataGridView1_CellMouseMove(object sender, DataGridViewCellMouseEventArgs e) 
{ 
    dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Style.BackColor = Color.Blue; 
} 

Вам нужно CellMouseLeave событие для восстановления цвета

private void dataGridView1_CellMouseLeave(object sender, DataGridViewCellEventArgs e) 
{ 
    dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Style.BackColor = Color.White; 
} 
+0

Вы должны упомянуть 'столбец name' вместо' e.ColumnIndex' для сетчатой ​​клетки. –

+1

также в конструкторе DGV вам нужно установить двойную буферизацию, иначе изменение стиля ячейки вызывает мерцание над движением мыши над DGV 'this.SetStyle (ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);' –