Retroceder   Foros del Web > Programación para sitios web > .NET > win forms

Respuesta
 
Herramientas Desplegado
Antiguo 05-may-2006, 10:33   #1 (permalink)
ElNo ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Mensajes: 5
Colorear Renglones

Como puedo colorear los renglones de un datagrid dependiendo del valor de una de sus columnas?
ElNo está desconectado   Responder Citando
Antiguo 05-may-2006, 18:06   #2 (permalink)
pineda está en el buen camino
 
Fecha de Ingreso: septiembre-2005
Mensajes: 72
De acuerdo Colorear Renglones

Básicamente debes hacer una clase que en la que puedas modificar los TextBoxColumn.

Hace tiempo yo lo hice.. te paso un buen link para empezar:

http://syncfusion.com/FAQ/WindowsFor...44c.aspx#q745q

Había muchos ejemplos sobre ésto. También encontré un ejemplo muy interesante en microsoft, pero no recuerdo la dirección.

Pos si deseas buscarle un poco mas.
__________________
Henry :-D
pineda está desconectado   Responder Citando
Antiguo 06-may-2006, 08:56   #3 (permalink)
sagma ha deshabilitado el karma
 
Avatar de sagma
 
Fecha de Ingreso: septiembre-2004
Ubicación: Santa Cruz
Mensajes: 106
Enviar un mensaje por MSN a sagma Enviar un mensaje por Yahoo  a sagma
Alegría colorear un renglon en el DG

Hola amigo como estas, yo tambien buscaba lo mismo, y encontre esto en la web. espero te sirva.

Código:
prueba a utilizar un estilo aplicado al datagrid· en primer lugar debes
crear un objeto datagridtablestyle y tantos objetos datagridtextboxcolumn
como columnas quieras mostrar en el grid‚ excepto en la columna a la que
quieres aplicar un color en base a una condición· para esta columna creas una
clase que herede de datagridtextboxcolumn y reemplazas el método paint()‚
añadiendo el código personalizado que modifique el color de fondo cuando se
cumpla la condición· te adjunto un ejemplo de código para que puedas probarlo
y hacer las modificaciones para tu caso:

'/////////////////////////////////////////////////
public class form1
inherits system.windows.forms.form

private sub form1_load(byval sender as system.object‚ byval e as
system.eventargs) handles mybase.load
dim oconnection as sqlconnection
dim odataadapter as sqldataadapter
dim odataset as dataset

oconnection = new
sqlconnection("server=localhost;database=northwind;uid=sa;pwd=")
odataadapter = new sqldataadapter("select
productid‚productname‚supplierid from products"‚ oconnection)
odataset = new dataset

oconnection.open()
odataadapter.fill(odataset‚ “products")
oconnection.close()

me.datagrid1.datasource = odataset
me.datagrid1.datamember = “products"

dim otablestyle as new datagridtablestyle
otablestyle.mappingname = “products"

dim oproductid as new datagridtextboxcolumn
oproductid.mappingname = “productid"
oproductid.headertext = “código"
oproductid.alignment = horizontalalignment.center

dim oproductname as new datagridtextboxcolumn
oproductname.mappingname = “productname"
oproductname.headertext = “nombre"

dim osupplierid as new dgtxtcolcolor
osupplierid.mappingname = “supplierid"
osupplierid.headertext = “proveedor"

otablestyle.gridcolumnstyles.addrange(new datagridcolumnstyle() _
{oproductid‚ oproductname‚ osupplierid})

me.datagrid1.tablestyles.add(otablestyle)
end sub
end class

'–––––––––––––––––––––––––––––––––
public class dgtxtcolcolor
inherits datagridtextboxcolumn

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 ofiladatos as datarowview = source.list(rownum)

if ofiladatos("supplierid") = 3 then
obrush = new solidbrush(color.aquamarine)
else
obrush = backbrush
end if

mybase.paint(g‚ bounds‚ source‚ rownum‚ _
obrush‚ _
forebrush‚ _
aligntoright)
end sub
end class
'/////////////////////////////////////////////////

observa que para la columna del campo supplierid usamos en el datagrid una
clase propia‚ y en su evento paint() comprobamos el valor de dicho campo‚
cuando sea 3‚ le aplicamos un color de fondo distinto·

espero que te sea de utilidad·
__________________
Sagma -- :arriba:
sagma esta en línea ahora   Responder Citando
Antiguo 08-may-2006, 06:23   #4 (permalink)
freegirl tiene algunos puntos positivos de karma
 
Avatar de freegirl
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalunya
Mensajes: 2.288
http://www.elguille.info/colabora/NE...arDatagrid.htm


saludos!
freegirl está desconectado   Responder Citando
Antiguo 08-may-2006, 14:53   #5 (permalink)
ElNo ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Mensajes: 5
Gracias

ok, muchas gracias a todos......
ElNo está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 15:13.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93