2010-07-05 11 views

Respuesta

28

En el DataGridView hay un DefaultCellStyle, dentro de este hay SelectionBackColor y SelectionForeColor propiedades.

El DataGridView utiliza una idea herencia de estilos, en caso de encontrar que no se está aplicando el estilo que elija:

http://msdn.microsoft.com/en-us/library/1yef90x0.aspx

1

Aprovechando DataGridViewCell 's eventos CellEnter y CellLeave puede intentar algo así como esto:

private void foobarDataGridView_CellEnter(object sender, DataGridViewCellEventArgs e) 
{ 
    DataGridViewCellStyle fooCellStyle = new DataGridViewCellStyle(); 
    fooCellStyle.BackColor = System.Drawing.Color.LightYellow; 
    this.VariableFinderDataGridView.CurrentCell.Style.ApplyStyle(fooCellStyle); 
} 

private void foobarFinderDataGridView_CellLeave(object sender, DataGridViewCellEventArgs e) 
{ 
    DataGridViewCellStyle barCellStyle = new DataGridViewCellStyle(); 
    barCellStyle.BackColor = System.Drawing.Color.White; 
    this.VariableFinderDataGridView.CurrentCell.Style.ApplyStyle(barCellStyle); 
} 
+0

¿Qué sucede si el color de la fila antes de la selección no era blanco? – Thunder

+0

Me refiero a que fue solo una muestra rápida para ilustrar el concepto: usted acaba de crear un método de ayuda para recuperar el color que necesita para alternar allí. –

26

Vamos hombre ... tiene que haber una solución simple, y finalmente consiguió una.

dataGridView1.DefaultCellStyle.SelectionBackColor = Color.Blue; 
dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Red; 

Esto funcionó para mí, sin códigos complejos, sin manejo de eventos. Lo hice antes, pero no era capaz de recordar lo que pensó que sería publicando ayudar a los demás y para mí en el futuro :)

+1

¡¡¡Respuesta perfecta !!! Gracias. – SKR

0

Aquí está mi código

private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e) 
{ 
dataGridView1.CurrentRow.DefaultCellStyle.BackColor = Color.Maroon; 
dataGridView1.CurrentRow.DefaultCellStyle.ForeColor = Color.White; 
} 
+0

¡Un buen Adam! ¡Nunca supe que existía! –

Cuestiones relacionadas