Colorare la griglia della GridView

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca

Come è noto, il colore delle linee che costituiscono la griglia interna dell'Oggetto GridView è fisso: sempre grigio. Non v'è una Proprietà diretta della GridView che possa cambiare il colore delle linee che distingono le varie celle della GridView.

Si può ottenere, comunque, questo risultato, tendendo presente che l'oggetto GridView è costituito anche da un Oggetto Figlio, il quale risulta essere una "ScrollArea", come si può notare dal seguente esempio:

Public Sub Form_Open()
 
 Dim ob As Object
 
 For Each ob In GridView1.Children
   Print Object.Class(ob).Name
 Next
 
End

Dato ciò, per colorare la le linee costituenti la griglia di una GridView, sarà sufficiente assegnare al predetto Oggetto Figlio (la ScrollArea ), un valore relativo ad un colore.

Esempio:

Public Sub Form_Open()
 
 With GridView1
   .Columns.Count = 4
   .Rows.Count = 4
' Coloriamo la griglia di colore rosso:
   .Children[0].Background = Color.Red
 End With

End


Usando l'Evento "_Data()" e operando sulla Proprietà ".Border" della GridView

In tal caso avremo ad esempio:

Public Sub Form_Open()

 With GridView1
   .Columns.Count = 4
   .Rows.Count = 4
' Nascondiamo le linee preimpostate della "GridView": ' [nota 1]
   .Grid = False
 End With

End


Public Sub GridView1_Data(Row As Integer, Column As Integer)
 
' Impostiamo le linee delle righe della "GridView":
 With GridView1.Rows[row].Border = New Border
  .Style = .Plain
  .Color = Color.Green
  If row < GridView1.Rows.Max Then .BottomStyle = .None
  .RightMargin = 1
End With

' Impostiamo le linee di ciascuna cella (e quindi creiamo le Colonne) della "GridView":
With GridView1[row, Column].Border = New Border
  .Style = .Plain
  .Color = Color.Green
  If Column < GridView1.Columns.Count Then .LeftStyle = .None
  If row < GridView1.Rows.Count Then .BottomStyle = .None
End With
 
End


Note

[1] Al riguardo vedere la seguente pagina: Nascondere le linee della griglia di una GridView