How to: Manipulate a Table's Row Groups through the RowGroups Property

This example demonstrates some of the more common operations that can be performed on a table's row groups through the RowGroups property.

Create a new table using Add method

The following example creates a new table and then uses the Add method to add columns to the table's RowGroups collection.

Table tbl = new Table();
int rowGroupsToAdd = 4;
for (int x = 0; x < rowGroupsToAdd; x++)
    tbl.RowGroups.Add(new TableRowGroup());
Dim tbl As New Table()
Dim rowGroupsToAdd As Integer = 4
For x As Integer = 0 To rowGroupsToAdd - 1
    tbl.RowGroups.Add(New TableRowGroup())
Next x

Inserts a new TableRowGroup

The following example inserts a new TableRowGroup. The new column is inserted at index position 0, making it the new first row group in the table.

Note

The TableRowGroupCollection collection uses standard zero-based indexing.

tbl.RowGroups.Insert(0, new TableRowGroup());
tbl.RowGroups.Insert(0, New TableRowGroup())

Add rows to the TableRowGroup

The following example adds several rows to a particular TableRowGroup (specified by index) in the table.

int rowsToAdd = 10;
for (int x = 0; x < rowsToAdd; x++)
    tbl.RowGroups[0].Rows.Add(new TableRow());
Dim rowsToAdd As Integer = 10
For x As Integer = 0 To rowsToAdd - 1
    tbl.RowGroups(0).Rows.Add(New TableRow())
Next x

Access row properties in the first row group

The following example accesses some arbitrary properties on rows in the first row group in the table.

// Alias the working TableRowGroup for ease in referencing.
TableRowGroup trg = tbl.RowGroups[0];
trg.Rows[0].Background = Brushes.CornflowerBlue;
trg.Rows[1].FontSize = 24;
trg.Rows[2].ToolTip = "This row's tooltip";
' Alias the working TableRowGroup for ease in referencing.
Dim trg As TableRowGroup = tbl.RowGroups(0)
trg.Rows(0).Background = Brushes.CornflowerBlue
trg.Rows(1).FontSize = 24
trg.Rows(2).ToolTip = "This row's tooltip"

Add cells to a TableRow

The following example adds several cells to a particular TableRow (specified by index) in the table.

int cellsToAdd = 10;
for (int x = 0; x < cellsToAdd; x++)
    tbl.RowGroups[0].Rows[0].Cells.Add(new TableCell(new Paragraph(new Run("Cell " + (x + 1)))));
Dim cellsToAdd As Integer = 10
For x As Integer = 0 To cellsToAdd - 1
    tbl.RowGroups(0).Rows(0).Cells.Add(New TableCell(New Paragraph(New Run("Cell " & (x + 1)))))
Next x

Access methods and properties on cells in the first row group

The following example access some arbitrary methods and properties on cells in the first row in the first row group.

// Alias the working for for ease in referencing.
TableRow row = tbl.RowGroups[0].Rows[0];
row.Cells[0].Background = Brushes.PapayaWhip;
row.Cells[1].FontStyle = FontStyles.Italic;
// This call clears all of the content from this cell.
row.Cells[2].Blocks.Clear();
' Alias the working for for ease in referencing.
Dim row As TableRow = tbl.RowGroups(0).Rows(0)
row.Cells(0).Background = Brushes.PapayaWhip
row.Cells(1).FontStyle = FontStyles.Italic
' This call clears all of the content from this cell.
row.Cells(2).Blocks.Clear()

Get the number of TableRowGroup elements in a table

The following example returns the number of TableRowGroup elements hosted by the table.

int rowGroups = tbl.RowGroups.Count;
Dim rowGroups As Integer = tbl.RowGroups.Count

Remove a row group by reference

The following example removes a particular row group by reference.

tbl.RowGroups.Remove(tbl.RowGroups[0]);
tbl.RowGroups.Remove(tbl.RowGroups(0))

Remove a row group by index

The following example removes a particular row group by index.

tbl.RowGroups.RemoveAt(0);
tbl.RowGroups.RemoveAt(0)

Remove all row groups from the table's row groups collection

The following example removes all row groups from the table's row groups collection.

tbl.RowGroups.Clear();
tbl.RowGroups.Clear()

See also