如何:通过 Blocks 属性操作 FlowDocument

这些示例演示可以通过 Blocks 属性对 FlowDocument 执行的一些更常见的操作。

创建新的 FlowDocument

以下示例创建一个新的 FlowDocument,然后将一个新的 Paragraph 元素追加到 FlowDocument

FlowDocument flowDoc = new FlowDocument(new Paragraph(new Run("A bit of text content...")));
flowDoc.Blocks.Add(new Paragraph(new Run("Text to append...")));
Dim flowDoc As New FlowDocument(New Paragraph(New Run("A bit of text content...")))
flowDoc.Blocks.Add(New Paragraph(New Run("Text to append...")))

创建新的 Paragraph 元素

下面的示例创建一个新的 Paragraph 元素,并将其插入到 FlowDocument 的开头。

Paragraph p = new Paragraph(new Run("Text to insert..."));
flowDoc.Blocks.InsertBefore(flowDoc.Blocks.FirstBlock, p);
Dim p As New Paragraph(New Run("Text to insert..."))
flowDoc.Blocks.InsertBefore(flowDoc.Blocks.FirstBlock, p)

获取顶级 Block 元素

下面的示例获取 FlowDocument 中包含的顶级 Block 元素数。

int countTopLevelBlocks = flowDoc.Blocks.Count;
Dim countTopLevelBlocks As Integer = flowDoc.Blocks.Count

删除最后一个 Block 元素

下面的示例删除 FlowDocument 中的最后一个 Block 元素。

flowDoc.Blocks.Remove(flowDoc.Blocks.LastBlock);
flowDoc.Blocks.Remove(flowDoc.Blocks.LastBlock)

清除所有 Block 内容

以下示例将从 FlowDocument 中清除所有内容(Block 元素)。

flowDoc.Blocks.Clear();
flowDoc.Blocks.Clear()

另请参阅