Comment faire une boucle à travers des colonnes spécifiques dans gridview?
J'ai besoin de loop thru particulier des colonnes dans un gridview. Par exemple, j'ai besoin de boucle tous les "%" colonnes et ensuite affecter des couleurs en fonction de leurs valeurs, est-il un moyen simple pour y parvenir? Merci.
Gridview table
RowDataBound événement
Protected Sub gv_ssi_rzli_data_1_RowDataBound(sender As Object, e As EventArgs) Handles gv_ssi_rzli_data_1.RowDataBound
Dim gv As GridView = gv_ssi_rzli_data_1
For i As Integer = 0 To gv.Rows.Count - 1
If gv.Rows(i).Cells(0).Text = "Oct" Or
gv.Rows(i).Cells(0).Text = "Nov" Or
gv.Rows(i).Cells(0).Text = "Dec" Then
If gv.Rows(i).Cells(2).Text >= Session("rzli_avg_blue_1") Then
gv.Rows(i).Cells(2).BackColor = System.Drawing.Color.LightBlue
ElseIf gv.Rows(i).Cells(2).Text >= Session("rzli_avg_green_1") And gv.Rows(i).Cells(2).Text < Session("rzli_avg_blue_1") Then
gv.Rows(i).Cells(2).BackColor = System.Drawing.Color.LightGreen
ElseIf gv.Rows(i).Cells(2).Text >= Session("rzli_avg_yellow_1") And gv.Rows(i).Cells(2).Text < Session("rzli_avg_green_1") Then
gv.Rows(i).Cells(2).BackColor = System.Drawing.Color.LightYellow
ElseIf gv.Rows(i).Cells(2).Text <= Session("rzli_avg_red_1") Then
gv.Rows(i).Cells(2).BackColor = System.Drawing.Color.LightPink
End If
End If
Next
End Sub
Vous devez vous connecter pour publier un commentaire.
Il y a un certain nombre de façons de le faire.
Tout d'abord, je devrais sans doute point que vous semblez être de la lecture à travers l'ensemble de la grille à chaque fois que vous liez une rangée, ce qui me semble inutile.
Cela mis à part, peut-être la façon la plus simple pourrait être résumé le code qui fait la comparaison de vos gammes de valeur dans sa propre méthode, avec les paramètres de la cellule pour être testés et modifiés. Car je suppose que de votre utilisation de l'index de colonne 2 que vous savez ce que sont les colonnes de pourcentage colonnes, vous devez simplement appeler votre nouvelle méthode avec la cellule concernée, comme suit:
Je suppose, ci-dessus, que pour une raison quelconque vous voulez juste de mettre en évidence Oct-Déc numéros. Si vous voulez varier, ou si vous voulez utiliser un jeu de couleurs différent pour les autres trimestres, merci de le dire.
SetCellBackground devrait ressembler à ceci (tapé à partir de la mémoire):
if .. then .. elseif .. then .. elseif .. end if
code encore et encore.