RowDynamicColor

De GrialWIKI

(Diferencias entre revisiones)
(Coloreo condicional en la Grial.Grid)
Línea 1: Línea 1:
=Coloreo condicional en la Grial.Grid=
=Coloreo condicional en la Grial.Grid=
 +
==Filas (Rows)==
Es posible asociar una función que será llamada para cada fila de la grilla, donde se pueden cambiar los colores
Es posible asociar una función que será llamada para cada fila de la grilla, donde se pueden cambiar los colores
que se usarán para la fila en base a evaluaciones sobre los datos de la fila.
que se usarán para la fila en base a evaluaciones sobre los datos de la fila.
Línea 20: Línea 21:
Como vemos en el ejemplo, el parametro '''args As Grial.Grid.GridControl.RowDynamicColorEventArgs''' contiene una referencia a la fila particular de la grilla: '''drv''' (DataRowView) mediante el cual podemos analizar el contenido de los campos y modificar los colores para esa fila.
Como vemos en el ejemplo, el parametro '''args As Grial.Grid.GridControl.RowDynamicColorEventArgs''' contiene una referencia a la fila particular de la grilla: '''drv''' (DataRowView) mediante el cual podemos analizar el contenido de los campos y modificar los colores para esa fila.
El el parametro '''args''' cuenta con dos propiedades modificables, '''fore''' y '''back''' de tipo Color.
El el parametro '''args''' cuenta con dos propiedades modificables, '''fore''' y '''back''' de tipo Color.
 +
 +
===Paso 2: Asociar la función===
 +
Esto puede hacerse en el Form_Load
 +
<code>
 +
AddHandler Ipv_Aspi_02W_GrpFliar_scb.InternalGrid.RowDynamicColor, AddressOf SiFbajaEnRojo
 +
</code>
 +
 +
==Celdas (Cells)==
 +
Es posible asociar una función que será llamada para cada celda de la grilla, donde se pueden cambiar los colores y el texto que se usarán para la celda en base a evaluaciones sobre los datos de la celda.
 +
 +
El evento se denomina '''CellDynamicColor''', y debe asociarse mediante la cláusula "Handles" o mediante el comando "AddHandler"
 +
 +
Ejemplo:
 +
 +
Supongamos un combo-grilla denominado '''Ipv_Aspi_02W_GrpFliar_scb''' en el cual se desea que la celda "fecha de baja" se muestren en color rojo si el registro esta dado de baja.
 +
 +
===Paso 1: Crear la función de formato condicional===
 +
<code>
 +
'si tiene fecha de baja, que la celda se vea de color rojo
 +
Private Sub SiFbajaEnRojo(sender As Object, args As Grial.Grid.GridControl.CellDynamicColorEventArgs)
 +
  If args.field="IPVASPI02_FBAJA" AndAlso DataIn(args.drv!IPVASPI02_FBAJA) Then
 +
          args.fore = Color.Red
 +
          args.display = "BAJA " & args.display
 +
  End If
 +
End Sub
 +
</code>
 +
 +
Como vemos en el ejemplo, el parametro '''args As Grial.Grid.GridControl.CellDynamicColorEventArgs''' contiene el nombre del campo '''field''', el texto a mostrar '''display''', modificable, de tipo string y una referencia a la fila particular de la grilla: '''drv''' (DataRowView) mediante el cual podemos analizar el contenido de los campos y modificar los colores para esa fila.
 +
El el parametro '''args''' cuenta tambien con dos propiedades modificables, '''fore''' y '''back''' de tipo Color.
===Paso 2: Asociar la función===
===Paso 2: Asociar la función===

Revisión de 13:57 14 abr 2020

Contenido

Coloreo condicional en la Grial.Grid

Filas (Rows)

Es posible asociar una función que será llamada para cada fila de la grilla, donde se pueden cambiar los colores que se usarán para la fila en base a evaluaciones sobre los datos de la fila.

El evento se denomina RowDynamicColor, y debe asociarse mediante la cláusula "Handles" o mediante el comando "AddHandler"

Ejemplo:

Supongamos un combo-grilla denominado Ipv_Aspi_02W_GrpFliar_scb en el cual se desea que las filas que estén dadas de baja se muestren en color rojo.

Paso 1: Crear la función de formato condicional

'si tiene fecha de baja, que la fila se vea de color rojo
Private Sub SiFbajaEnRojo(sender As Object, args As Grial.Grid.GridControl.RowDynamicColorEventArgs)
   If DataIn(args.drv!IPVASPI02_FBAJA) Then args.fore = Color.Red
End Sub

Como vemos en el ejemplo, el parametro args As Grial.Grid.GridControl.RowDynamicColorEventArgs contiene una referencia a la fila particular de la grilla: drv (DataRowView) mediante el cual podemos analizar el contenido de los campos y modificar los colores para esa fila. El el parametro args cuenta con dos propiedades modificables, fore y back de tipo Color.

Paso 2: Asociar la función

Esto puede hacerse en el Form_Load

AddHandler Ipv_Aspi_02W_GrpFliar_scb.InternalGrid.RowDynamicColor, AddressOf SiFbajaEnRojo

Celdas (Cells)

Es posible asociar una función que será llamada para cada celda de la grilla, donde se pueden cambiar los colores y el texto que se usarán para la celda en base a evaluaciones sobre los datos de la celda.

El evento se denomina CellDynamicColor, y debe asociarse mediante la cláusula "Handles" o mediante el comando "AddHandler"

Ejemplo:

Supongamos un combo-grilla denominado Ipv_Aspi_02W_GrpFliar_scb en el cual se desea que la celda "fecha de baja" se muestren en color rojo si el registro esta dado de baja.

Paso 1: Crear la función de formato condicional

'si tiene fecha de baja, que la celda se vea de color rojo
Private Sub SiFbajaEnRojo(sender As Object, args As Grial.Grid.GridControl.CellDynamicColorEventArgs)
   If args.field="IPVASPI02_FBAJA" AndAlso DataIn(args.drv!IPVASPI02_FBAJA) Then 
           args.fore = Color.Red
           args.display = "BAJA " & args.display
   End If
End Sub

Como vemos en el ejemplo, el parametro args As Grial.Grid.GridControl.CellDynamicColorEventArgs contiene el nombre del campo field, el texto a mostrar display, modificable, de tipo string y una referencia a la fila particular de la grilla: drv (DataRowView) mediante el cual podemos analizar el contenido de los campos y modificar los colores para esa fila. El el parametro args cuenta tambien con dos propiedades modificables, fore y back de tipo Color.

Paso 2: Asociar la función

Esto puede hacerse en el Form_Load

AddHandler Ipv_Aspi_02W_GrpFliar_scb.InternalGrid.RowDynamicColor, AddressOf SiFbajaEnRojo
Herramientas personales