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

Colorear un Grid

Estas en el tema de Colorear un Grid en el foro de .NET en Foros del Web. Me gustaría saber como puedo colorear las filasde un grid. Tengo una tabla "persona", la persona puede ser un socio o cliente, dependiendo de que ...
  #1 (permalink)  
Antiguo 28/11/2007, 03:20
 
Fecha de Ingreso: mayo-2007
Mensajes: 88
Antigüedad: 17 años
Puntos: 0
Colorear un Grid

Me gustaría saber como puedo colorear las filasde un grid. Tengo una tabla "persona", la persona puede ser un socio o cliente, dependiendo de que sea uno u otro me gustaría poder colorear la fila. ¿Alguien sabe como hacer eso?
¿Me podrias indicar con un pequeño ejemplo la manera de hacerlo?

Saludos y gracias
  #2 (permalink)  
Antiguo 28/11/2007, 06:55
Avatar de jhonwilliams  
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 2 meses
Puntos: 76
Busqueda Re: Colorear un Grid

Si esta pregunta esta para WinForms, asi:

1. Recorres el datagrid con un foreach

Código:
foreach(DataGridViewRow fila in DataGrid.Rows)
{

}
2. Realiza un swicth o un if, para colorear el que te parezca mejor.

Código:
swicth(fila.Cells["TipoCliente"].ToString())
{
     Case "Socio":
       Codigo para colorear

     Case "Otro Tipo":
       Codigo para colorear

}
3. para colorear usas algo como esto.

Código:
fila.Cells["TipoCliente"].Style.BackColor = Color.Red;
fila.Cells["Nombre"].Style.BackColor = Color.Red;
fila.Cells["Telefono"].Style.BackColor = Color.Red;
Nota: Como el color se asigna para la celda, entonces debes aplicarlo a cada celda de la fila, es por eso que te deje tres lineas de ejemplo cada una con el un nombre diferente de columna.

Jhon Williams
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
  #3 (permalink)  
Antiguo 29/11/2007, 09:50
Avatar de sagma  
Fecha de Ingreso: septiembre-2004
Ubicación: Santa Cruz de la Sierra - Bolivia
Mensajes: 136
Antigüedad: 19 años, 7 meses
Puntos: 1
De acuerdo Re: Colorear un Grid

hola que tal brother, aca tengo un código para winform:

usando los tables estyle:

Código:
        Dim myEstiloCol7 As New DGTxtColColor
        myEstiloCol7.MappingName = "accondesc"
        myEstiloCol7.HeaderText = "Estado"
        myEstiloCol7.Width = 65
Código:
Public Class DGTxtColColor

    Inherits DataGridTextBoxColumn

    Private mColorFondoCondicion As Color

    Protected Overloads Overrides Sub Paint(ByVal g As System.Drawing.Graphics, _
    ByVal bounds As System.Drawing.Rectangle, _
    ByVal source As System.Windows.Forms.CurrencyManager, _
    ByVal rowNum As Integer, _
    ByVal backBrush As System.Drawing.Brush, _
    ByVal foreBrush As System.Drawing.Brush, _
    ByVal alignToRight As Boolean)

        Dim oBrush As SolidBrush
        Dim sValorCampo As String
        Dim ofiladatos As DataRowView = source.List(rowNum)

        sValorCampo = CType(ofiladatos("accondesc"), String).Trim()

        Select Case sValorCampo
            Case "PASIVOS"
                oBrush = New SolidBrush(Color.Yellow)
            Case "EGRESADO"
                oBrush = New SolidBrush(Color.Gold)
            Case Else
                oBrush = backBrush
        End Select

        'If CType(ofiladatos("accondesc"), String).Trim() = "EGRESADO" Then
        'oBrush = New SolidBrush(Color.Gold)
        'Else
        'oBrush = backBrush
        'End If

        MyBase.Paint(g, bounds, source, rowNum, _
            oBrush, _
            foreBrush, _
            alignToRight)
    End Sub

End Class
suerte
__________________
Sagma -- :arriba:
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 05:44.