#249 – Creating a Table in a FlowDocument

You can include a table in a FlowDocument as content by using the Table block.  You present your content by laying it out as rows and columns.

	<FlowDocument FontFamily="Cambria" FontSize="14">
		<Paragraph>Some Pixar films:</Paragraph>
		<Table>
			<Table.Columns>
				<TableColumn Width="50*"/>
				<TableColumn Width="15*"/>
				<TableColumn />
			</Table.Columns>

			<TableRowGroup Background="LightGray" FontWeight="Bold">
				<TableRow>
					<TableCell><Paragraph>Title</Paragraph></TableCell>
					<TableCell><Paragraph>Year</Paragraph></TableCell>
					<TableCell><Paragraph>Director</Paragraph></TableCell>
				</TableRow>
			</TableRowGroup>

			<TableRowGroup FontFamily="Verdana" FontSize="12">
				<TableRow>
					<TableCell><Paragraph>Toy Story</Paragraph></TableCell>
					<TableCell><Paragraph>1995</Paragraph></TableCell>
					<TableCell><Paragraph>John Lasseter</Paragraph></TableCell>
				</TableRow>
				<TableRow>
					<TableCell><Paragraph>Monster's, Inc.</Paragraph></TableCell>
					<TableCell><Paragraph>2001</Paragraph></TableCell>
					<TableCell><Paragraph>Pete Docter</Paragraph></TableCell>
				</TableRow>
				<TableRow>
					<TableCell><Paragraph>The Incredibles</Paragraph></TableCell>
					<TableCell><Paragraph>2004</Paragraph></TableCell>
					<TableCell><Paragraph>Brad Bird</Paragraph></TableCell>
				</TableRow>
			</TableRowGroup>
		</Table>
	</FlowDocument>

#247 – Types of Blocks that You Can Use in a FlowDocument

There are five different types of blocks that you can include in a FlowDocument.  A block can be one of the following:

  • Paragraph – A paragraph of text
  • List – A list of text items, typically displayed with a bullet character
  • Table – A table, with rows and columns
  • Section – A section of the document that can, in turn, contain other blocks
  • BlockUIContainer – A placeholder that allows inserting any UIElement into the document