anonymous Log in
Search
Recents:
v3.0
csharp-l
Fwd: colorear un solo registro en Grid basada en SDT
12/08/20 20:24

ap.cloudcomputing

Replies: 3

Buenas gente trabajo con GX16 U9 generando .net, tengo una grilla basada en
sdt y si el campo cumple cierta condición necesito colorear ese campo con
backColor (no la columna entera).
Probé darle BackColor al control asociado al campo "ctlCampoSDT", y resulta
que me colorea toda la columna y no solo el registro puntual de dicha
columna.
Alguno tiene una posible sugerencia? Saludos !
--
Agustín Pereira
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Libre
de virus. www.avg.com
<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#m_5520582043034011471_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
--
Agustín Pereira
-----------------------------------------
Para Suscribirse/Desuscribirse:
http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,11
Por consultas owner-csharp-l@gxtech.com.uy
Replies

cfalchini

15/08/20 08:47
Hola Agustin: para pintar el fondo de un campo de alguno de los renglones que cumplen con una condición lo podes definir en el evento grid.load de la variable sdt Event Grid1.Load() if &AnalisisKmsLitros.CurrentItem.ProveedorId = 0 ctlProveedorId.BackColor = rgb(95,126,103) else ctlProveedorId.BackColor = rgb(255,255,255) endif endevent Para este ejemplo: &AnalisisKmsLitros : la variable del tipo sdt Grid1: nombre de la grilla que contiene la variable sdt ProveedorId: nombre del campo del sdt que estoy evaluando para hacer alguna regla ctlProveedorId: Control Name de la columna. [image: image.png] Pinta solamente con color verde los que son ProveedorId = 0 [image: image.png] PD: No te olvides del Else en el IF porque la propiedad queda seteada y te va a pintar todos los registros a partir del registro que modificaste la propiedad. Event Grid1.Load() if &AnalisisKmsLitros.CurrentItem.ProveedorId = 0 ctlProveedorId.BackColor = rgb(95,126,103) //else // ctlProveedorId.BackColor = rgb(255,255,255) endif endevent Si haces esto cuando encuentre un proveedorid = 0 va a pintar desde ese registro en adelante a todos los campos proveedorid en verde. Espero sea lo que necesitabas. Saludos El mié., 12 ago. 2020 a las 18:04, Agustín Pereira (< ap.cloudcomputing@gmail.com>)

ap.cloudcomputing

17/08/20 12:11
Excelente César! No tenia idea de que el current item servía para colorear registros a medida que se van ingresando, pensé que era para cuando te posicionabas en una fila de dicha grid. Me funcionó. Gracias :) El sáb., 15 ago. 2020 a las 5:47, Cesar Adolfo Falchini (< cesarfalchini@gmail.com>)

Aluziner

17/08/20 15:05
Agustin: Funciona igual que cuando estás recorriendo el grid, despues de cargar la fila el currentItem es la fila que se acaba de cargar. El lun., 17 de ago. de 2020 a la(s) 05:11, Agustín Pereira ( ap.cloudcomputing@gmail.com)


Back to csharp-l