Griglia e VistaDati: applicazione di uno stile differente ad una cella in base al valore (vecchio layout)

' Il seguente snippet deve essere inserito nell'EventoRender e consente di applicare uno stile differente ad una cella di una riga di una griglia in base al valore.
' In particolare, viene inserito il colore di sfondo rosso per tutte le celle della colonna corrispondente al campo "NUMBER1" che hanno valore maggiore di 10
' Lo snippet può essere facilmente modificato per modificare lo sfondo e/o applicare uno stile diverso. Come si può vedere, la modifica è effettuata tramite l'applicazione di una specifica classe CSS, che può essere definita a piacere.
' N.B. può essere utilizzato solo se NuovoLayout=false

form.AddStyle(".Critical","background-color:red !important") 

dim i as integer

for i=1 to form.FindControl("Grid1").RowCount()
	if form.FindControl("Grid1").GetCellValue(i,"NUMBER1")>10
		form.FindControl("Grid1").SetCellStyle(i,"NUMBER1","Critical")
	Else
		form.FindControl("Grid1").SetCellStyle(i,"NUMBER1","")
	End If
Next

' ***** Versione utilizzabile con release precedenti alla 2021.07+4
dim style as string
dim g as QWWebControls.QWWebGrid2 = form.findcontrol("Grid2")
style="<style type=""text/css"">"
'style+="  .Critical{color:red}"  ' Colore font rosso
 style+=" .Critical{background-color:red !important}"  ' Sfondo rosso
style+="</style>"

dim l as new System.Web.Ui.WebControls.literal

l.text = style
g.parent.controls.add(l)

dim r As Infragistics.Web.UI.GridControls.GridRecord 
For Each r In g.rows
	dim c=r.Items(2) ' in questo caso modifica la terza colonna (2 è perchè il numero della colonna parte da zero)
	
	if c.value>0 ' Se il valore è maggiore di zero, mette lo sfondo rosso applicando alla cella lo stile "Critical"
		c.CssClass = "Critical" 
	else
		c.CssClass = ""
	end if
Next