Can I merge adjacent cells in a .NET 2.0 Gridview control?

A

Andrew Shaw

I have a gridview control that is returning rows where for 1 column the
value is usually the same. Occasionally the last couple of rows will
have a different value for this column. (2 unique values total). Instead
of displaying the same value in this column for every row, I'd like to
be able to merge all the identical values into one cell, similarly to
how I could do it in Excel.

I realise that this may be going way beyond what the Gridview is
supposed to do and if its not possible to do easily then that's fine,
I'll look at other options of providing some visial indication of a
change in that value, but I'm just wondering if this can easily be done
with the gridview (since its spot on for everything else I need it for!)

Here's a rough diagram of the sort of thing I'm looking for:

Col 1 | Col 2 | Col 3 | Col 4 |
------+-------+-------+-------+
| Val 2 | Val 3 | Val 4 |
+-------+-------+-------+
Val 1 | Val 5 | Val 6 | Val 7 |
+-------+-------+-------+
| Val 8 | Val 9 | Val A |
------+-------+-------+-------+
Val B | Val C | Val D | Val E |

The above diagram probably won't look too good if your reader doesn't
have a monospaced font - sorry for that!
 
R

Riki

Andrew said:
I have a gridview control that is returning rows where for 1 column
the value is usually the same. Occasionally the last couple of rows
will have a different value for this column. (2 unique values total).
Instead of displaying the same value in this column for every row,
I'd like to be able to merge all the identical values into one cell,
similarly to how I could do it in Excel.

I realise that this may be going way beyond what the Gridview is
supposed to do and if its not possible to do easily then that's fine,
I'll look at other options of providing some visial indication of a
change in that value, but I'm just wondering if this can easily be
done with the gridview (since its spot on for everything else I need
it for!)
Here's a rough diagram of the sort of thing I'm looking for:

Col 1 | Col 2 | Col 3 | Col 4 |
------+-------+-------+-------+
| Val 2 | Val 3 | Val 4 |
+-------+-------+-------+
Val 1 | Val 5 | Val 6 | Val 7 |
+-------+-------+-------+
| Val 8 | Val 9 | Val A |
------+-------+-------+-------+
Val B | Val C | Val D | Val E |

The above diagram probably won't look too good if your reader doesn't
have a monospaced font - sorry for that!

What you want is called grouping.

Search Google for "gridview grouping", that will give you some samples how
to do it.
Mostly, it is done just by blanking out the doubles, not by merging the
cells.

Merging cells can be done easily, I think. Gridview cells inherit from
TableCell controls, which have a RowSpan property that you can set.
This also requires removing the cells below the one with the extended
rowspan (row.Cells.RemoveAt(0) or something).

Jos
 
A

Andrew Shaw

Riki said:
What you want is called grouping.

Search Google for "gridview grouping", that will give you some samples how
to do it.
Mostly, it is done just by blanking out the doubles, not by merging the
cells.

Merging cells can be done easily, I think. Gridview cells inherit from
TableCell controls, which have a RowSpan property that you can set.
This also requires removing the cells below the one with the extended
rowspan (row.Cells.RemoveAt(0) or something).

Jos

Excellent - thanks very much for the tips - I'll go poke Google now!

Andrew
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top