Hola,
Necesito cambiar el color del contenido de una columna, de acuerdo al contenido de otra.
En el ejemplo que pruebo cambian el color, si el contenido tiene un valor positivo o negativo. En mi caso, quiero que cambie el color, pero si otra columna contiene una "S" o "".
Este codigo es el ejemplo actual y funciona:
Private Sub CreateCustomFormat (c As B4XTableColumn)
Dim formatter As B4XFormatter
formatter.Initialize
c.Formatter = formatter
Dim Positive As B4XFormatData = c.Formatter.NewFormatData
Positive.TextColor = B4XTable1.TextColor
Positive.FormatFont = xui.CreateDefaultBoldFont(16)
c.Formatter.AddFormatData(Positive, 0, c.Formatter.MAX_VALUE, True) 'Inclusive (zero included)
Dim Negative As B4XFormatData = c.Formatter.CopyFormatData(Positive)
Negative.TextColor = xui.Color_Red
Negative.FormatFont = xui.CreateDefaultBoldFont(14)
Negative.Prefix = "("
Negative.Postfix = ")"
c.Formatter.AddFormatData(Negative,c.Formatter.MIN_VALUE, 0, False)
End Sub
Pero Yo necesito, cambiar el color segun el contenido de otra columna, algo asi:
Col_ENE_si = B4XTable1.AddColumn("ENE_si" , B4XTable1.COLUMN_TYPE_TEXT)
...
Private Sub ENE_Si (c As B4XTableColumn)
Dim formatter As B4XFormatter
formatter.Initialize
c.Formatter = formatter
Dim Positive As B4XFormatData = c.Formatter.NewFormatData
Positive.FormatFont = xui.CreateDefaultBoldFont(16)
If Col_ENE_si = "S" Then --->>>> COMO OBTENGO EL CONTENIDO DE LA COLUMNA "Col_ENE_si" ???
Positive.TextColor = B4XTable1.TextColor
Else
Positive.TextColor = xui.Color_Gray
End If
c.Formatter.AddFormatData(Positive, 0, c.Formatter.MAX_VALUE, True) 'Inclusive (zero included)
End Sub
Aqui me dice que los TIPOS no COINCIDEN y por supuesto no funciona...
Saludos,
Sergio