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.

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());

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.

System_CAPS_ICON_note.jpg Note

The TableRowGroupCollection collection uses standard zero-based indexing.

            tbl.RowGroups.Insert(0, new 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());

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";

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)))));

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();

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

            int rowGroups = tbl.RowGroups.Count;

The following example removes a particular row group by reference.

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

The following example removes a particular row group by index.

            tbl.RowGroups.RemoveAt(0);

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

            tbl.RowGroups.Clear();

How-to: Manipulate Flow Content Elements through the Inlines Property
Manipulate a FlowDocument through the Blocks Property
Manipulate a Table's Columns through the Columns Property

Show: