如何:通过 Blocks 属性操作 FlowDocument

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

创建新的 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 元素,并将其插入到 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 元素

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

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

删除最后一个 Block 元素

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

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

清除所有 Block 内容

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

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

另请参阅