This documentation is archived and is not being maintained.

FlowDocument Constructor (Block)

Initializes a new instance of the FlowDocument class, adding a specified Block element as the initial content.

Namespace:  System.Windows.Documents
Assembly:  PresentationFramework (in PresentationFramework.dll)

public FlowDocument(
	Block block


Type: System.Windows.Documents.Block
An object deriving from the abstract Block class, to be added as the initial content.


block is null.

Valid input types for block include BlockUIContainer, List, Paragraph, Section, and Table.

The following example demonstrates the use of this constructor. In this case, the FlowDocument contains a flow element block structure consisting of a text run nested in a paragraph.

FlowDocument flowDoc = new FlowDocument(new Paragraph(new Run("A bit of text content...")));

The following example programmatically constructs a simple 2 x 2 table and then uses the FlowDocument constructor to create a new FlowDocument containing the table. Though a somewhat more complicated flow element block structure is used, use of the constructor is the same as in the preceding example.

// A paragraph with sample text will serve as table content.
Paragraph tableText = new Paragraph(new Run("A bit of text content..."));

Table sampleTable = new Table();

// Create and add a couple of columns.
sampleTable.Columns.Add(new TableColumn());
sampleTable.Columns.Add(new TableColumn());

// Create and add a row group and a couple of rows.
sampleTable.RowGroups.Add(new TableRowGroup());
sampleTable.RowGroups[0].Rows.Add(new TableRow());
sampleTable.RowGroups[0].Rows.Add(new TableRow());

// Create four cells initialized with the sample text paragraph.
sampleTable.RowGroups[0].Rows[0].Cells.Add(new TableCell(tableText));
sampleTable.RowGroups[0].Rows[0].Cells.Add(new TableCell(tableText));
sampleTable.RowGroups[0].Rows[1].Cells.Add(new TableCell(tableText));
sampleTable.RowGroups[0].Rows[1].Cells.Add(new TableCell(tableText));

// Finally, use the FlowDocument constructor to create a new FlowDocument containing 
// the table constructed above.
FlowDocument flowDoc = new FlowDocument(sampleTable);

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.