Foros del Web » Programación para mayores de 30 ;) » .NET »

colorear celda de datagridview segun un parametro?

Estas en el tema de colorear celda de datagridview segun un parametro? en el foro de .NET en Foros del Web. hola amigos soy una programadora de lenguaje c y muy poco se de este lenguaje poo (vb .net) resulta que tengo que hacer una aplicacion ...
  #1 (permalink)  
Antiguo 14/10/2010, 18:53
 
Fecha de Ingreso: octubre-2010
Mensajes: 43
Antigüedad: 13 años, 6 meses
Puntos: 3
Pregunta colorear celda de datagridview segun un parametro?

hola amigos soy una programadora de lenguaje c y muy poco se de este lenguaje poo (vb .net)

resulta que tengo que hacer una aplicacion con una bd y un datagriview eso ya lo tengo... pero necesito que segun el valor y texto que se introduzca me pinte un color la celda donde se guardara el valor-dato en el datagrid...

por ejemplo...
digamos que pongo un valor de 3 caracteres y al guardarlo en el datagrid o base me pinte de azul y si pongo un valor de 5 caracteres me pinte verde por ejemplo...

creo que esto se puede hacer con estructuras de desicion if y else pero como no conozco mucho vb .net pues no veo la forma de codifcar ese codigo en .net...

espero me puedan dar una guia
aclaro que ya busque en google pero no logro entender muy bien gracias

seme olvidaba es con windows form
  #2 (permalink)  
Antiguo 15/10/2010, 11:50
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: colorear celda de datagridview segun un parametro?

Hola lupita100 lo primero que se me ocurre es algo similar a lo siguiente:

Código vb:
Ver original
  1. Public Sub Pinta_dgv(ByVal dgv As DataGridView)
  2.    
  3.     Dim LaColumna As String
  4.         Dim NumeroCaracteres As Integer
  5.  
  6.         For i = 0 To dgv.Rows.Count - 1
  7.  
  8.             LaColumna = dgv.Item("Columna", i).Value
  9.         NumeroCaracteres = LaColumna.Length
  10.  
  11.             Select Case NumeroCaracteres
  12.                 Case "Primer Caso"
  13.                     dgv.Rows(i).DefaultCellStyle.BackColor = Color.Turquoise
  14.                 Case "Segundo Caso"
  15.                     dgv.Rows(i).DefaultCellStyle.BackColor = Color.Violet
  16.                 Case Else
  17.                     dgv.Rows(i).DefaultCellStyle.BackColor = Color.Yellow
  18.             End Select
  19.  
  20.         Next
  21.  
  22.     End Sub

Saludos!
  #3 (permalink)  
Antiguo 15/10/2010, 12:24
 
Fecha de Ingreso: octubre-2010
Mensajes: 43
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: colorear celda de datagridview segun un parametro?

gracias!!!
  #4 (permalink)  
Antiguo 18/10/2010, 11:42
 
Fecha de Ingreso: octubre-2010
Mensajes: 18
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: colorear celda de datagridview segun un parametro?

Hola, aqui otra forma ... El grid contiene una propiedad llamada RowDatabound ... dentro de esta propiedad puedes usar el siguiente codigo :

If e.Row.RowType = DataControlRowType.DataRow Then 'Esta linea es para que lo que hace el codigo lo haga en todas las filas excepto en el header
Dim Cte As Label = e.Row.Cells(4).Controls(1)

If Cte.Text.Length = 3 Then e.Row.Cells(4).BackColor = Drawing.Color.Beige

End If

================================================== ====

En lugar del if podrias tambien usar un select case :


Select Case Cte.Text.Length
Case Is > 2
e.Row.Cells(4).BackColor = Drawing.Color.Beige

Case Is = 5
e.Row.Cells(4).BackColor = Drawing.Color.Beige
End Select

Espero te sirva saludos !!!

Última edición por JosueMariaca; 18/10/2010 a las 11:47 Razón: Comentario

Etiquetas: celdas, color, datagridview
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:50.