Unire in una GridView le celle in un'unica grande cella
Per unire in una unica cella due o più celle di più righe, si utilizzerà la Proprietà ".RowSpan" delle celle. Per unire, invece, in una unica cella due o più celle di due o più colonne, si utilizzerà la Proprietà ".ColumnSpan" delle celle.
Unire le celle di due o più righe
Nell'esempio pratico, che segue, abbiamo una GridView formata da tre righe e tre colonne. Uniremo in un'unica cella le celle delle tre righe con riferimento alla seconda colonna. Ossia le seconde celle di ciascuna riga saranno unite a formare in un'unica grande cella verticale. Quindi la seconda colonna della GridView sarà formata da un'unica cella.
Inoltre inseriremo nell'unica grande cella un testo in basso al centro.
Public Sub Form_Open() With GridView1 .Rows.Count = 3 .Columns.Count = 3 End With With GridView1[0, 1] .RowSpan = 3 .Alignment = Align.Bottom .Text = "testo" End With End
In quest'altro esempio le celle di una colonna da unire saranno individuate, cliccando sulla prima cella da unire e, (mantenendo premuto il tasto del mouse) dopo esserci spostati con il puntatore del mouse sull'ultima cella da unire, rilasciando su quest'ultima cella il tasto del mouse:
Public Sub Form_Open() With GridView1 .Columns.Count = 3 .Rows.Count = 10 End With End Public Sub GridView1_Click() GridView1.Tag = GridView1.Row End Public Sub GridView1_MouseUp() ' Consente di ottenere l'unione delle celle su una medesima colonna sia se ci si sposta con il mouse verso il basso, sia verso l'alto: With GridView1 If .Row < .Tag Then GridView1[.Row, .Column].RowSpan = .Tag - .Row + 1 Else GridView1[.Tag, .Column].RowSpan = .Row - .Tag + 1 Endif End With End
Unire le celle di due o più colonne
Nell'esempio pratico, che segue, abbiamo una GridView formata da tre righe e tre colonne. Uniremo in un'unica cella le celle delle tre colonne con riferimento alla prima riga. Inoltre inseriremo nell'unica grande cella un testo al centro.
Public Sub Form_Open() With GridView1 .Rows.Count = 3 .Columns.Count = 3 End With With GridView1[0, 0] .ColumnSpan = 3 .Alignment = Align.Center .Text = "testo" End With End
In quest'altro esempio le celle di una riga da unire saranno individuate, cliccando sulla prima cella da unire e, dopo esserci spostati con il puntatore del mouse sull'ultima cella da unire, rilasciando su quest'ultima cella il tasto del mouse:
Public Sub Form_Open() With GridView1 .Columns.Count = 10 .Rows.Count = 3 End With End Public Sub GridView1_Click() GridView1.Tag = GridView1.Column End Public Sub GridView1_MouseUp() ' Consente di ottenere l'unione delle celle sulla medesima riga sia se ci si sposta con il mouse verso destra, sia verso sinistra: With GridView1 If .Column < .Tag Then GridView1[.Row, .Column].ColumnSpan = .Tag - .Column + 1 Else GridView1[.Row, .Tag].ColumnSpan = .Column - .Tag + 1 Endif End With End