通过


FlowDocument 控件

WPF 提供了三个专用控件用于查看 FlowDocument 内容,每个控件都针对不同的演示方案进行了优化。 通过这些控件,你可以在应用程序中显示丰富的可重排内容,同时为用户提供与该内容交互的不同方式。

打开示例文档的 FlowDocumentReader 控件的屏幕截图。

三个 FlowDocument 控件包括:

  • FlowDocumentScrollViewer:在连续滚动视图中显示内容,非常适合在没有分页的情况下阅读长文档。
  • FlowDocumentPageViewer:按页面显示内容页面,类似于书籍或杂志布局。
  • FlowDocumentReader:允许用户在不同的查看模式之间切换,包括滚动、逐页和双页分布视图,从而提供最大的灵活性。

这三个控件共享显示 FlowDocument 内容的常见用途,这些内容会自动调整以适应可用的查看区域。 选择最符合应用程序需求的控件:FlowDocumentScrollViewer 适用于简单滚动场景,FlowDocumentPageViewer 用于固定页面演示,或者使用 FlowDocumentReader 来让用户自主选择如何查看内容。

有关创建和使用流文档的详细信息,请参阅 流文档概述

FlowDocumentScrollViewer

控件 FlowDocumentScrollViewer 在滚动容器中显示 FlowDocument 内容。 此控件非常适合连续阅读体验,你希望用户滚动浏览内容,而不是在页面之间导航。 与按每页查看内容的FlowDocumentPageViewer进行对比。

Content 属性

内容属性FlowDocumentScrollViewerDocument,它指定要显示的FlowDocument

部件

下表列出了控件的 FlowDocumentScrollViewer 命名部件。

部件名称 部件类型 Description
PART_ContentHost ScrollViewer 用于流文档内容的滚动主机。
PART_FindToolBarHost Decorator 查找工具栏的宿主。
PART_ToolBarHost Decorator 工具栏的主机。

视觉状态

下表列出了控件的 FlowDocumentScrollViewer 视觉状态。

VisualState 名称 VisualStateGroup 名称 Description
有效 ValidationStates 该控件有效且没有验证错误。
无效焦点 ValidationStates 控件存在验证错误,并且具有键盘焦点。
无效未聚焦 ValidationStates 控件存在验证错误,但没有键盘焦点。

FlowDocument页面查看器

控件 FlowDocumentPageViewer 按页面显示 FlowDocument 内容。 此控件通过页面导航控件提供类似书籍的阅读体验。 与在滚动查看器中呈现FlowDocumentScrollViewer内容的FlowDocument相对比。

Content 属性

Document 属性是控件的内容属性 FlowDocumentPageViewer ,包含查看器中显示的流文档。

部件

下表列出了控件的 FlowDocumentPageViewer 命名部件。

部件名称 部件类型 Description
PART_FindToolBarHost Decorator 承载查找工具栏的修饰器。

视觉状态

下表列出了控件的 FlowDocumentPageViewer 视觉状态。

视觉状态 视觉状态集群 Description
有效 ValidationStates 该控件有效且没有验证错误。
无效焦点 ValidationStates 控件存在验证错误,并且具有键盘焦点。
无效未聚焦 ValidationStates 控件存在验证错误,但没有键盘焦点。

FlowDocumentReader

控件 FlowDocumentReader 显示 FlowDocument 内容并支持多种查看模式。 通过此控件,用户可以选择他们的首选阅读体验、在滚动、单页和双页分布视图之间进行切换,从而提供最大的灵活性。

Content 属性

Document 属性是内容属性,并定义 FlowDocument 读取器显示的内容。

部件

下表列出了控件的 FlowDocumentReader 命名部件。

部件名称 部件类型 Description
PART_ContentHost Decorator 承载不同查看模式的内容查看器的修饰器。
PART_FindToolBarHost Decorator 启用查找功能时承载查找工具栏的修饰器。

视觉状态

下表列出了控件的 FlowDocumentReader 视觉状态。

视觉状态名称 视觉状态组名称 Description
有效 ValidationStates 该控件有效且没有验证错误。
无效焦点 ValidationStates 控件存在验证错误,并且具有键盘焦点。
无效未聚焦 ValidationStates 控件存在验证错误,但没有键盘焦点。

样式和模板

可以修改这些控件的默认值 ControlTemplate ,使其具有唯一的外观。 有关详细信息,请参阅什么是样式和模板?以及如何为控件创建模板

另请参阅