动手试验:创建 FlowDocumentReader 控件

此页仅适用于 WPF 项目

在“属性”面板中,有些属性非常复杂,而不仅仅具有一个值。例如,有些属性代表一个值集合或一个带有本身属性的对象。您可以使用集合编辑器和子属性编辑器来修改这些值。

以下过程使用子属性编辑器和集合编辑器来显示如何向“FlowDocumentReader”控件添加内容。

Cc294699.alert_note(zh-cn,Expression.10).gif说明:

不需要使用此过程即可修改“FlowDocumentScrollViewer”控件中的文本。而可以使用编辑文本设置文本格式中的操作步骤以及文本和版式中的“操作方法”部分列出的其他主题。

向 FlowDocumentReader 控件添加内容

  1. 可以从资源库中使用“FlowDocumentReader”控件。在工具箱中,单击“资源库”Cc294699.0224cabd-5da1-4e01-bddd-4a647401a098(zh-cn,Expression.10).png 按钮。

  2. 选中“全部显示”复选框,以查看所有可用的控件。

  3. 在“控件”选项卡中,选择“系统控件”(默认设置),然后再选择“FlowDocumentReader”控件。此时,在工具箱的“资源库”按钮上方将显示一个通用图标,该图标被选中并且可添加到美工板上。

  4. 在美工板上绘制 FlowDocumentReader。

    在美工板上绘制的 FlowDocumentReader 控件

    Cc294699.341a31f1-c5ea-4d83-b371-b2097f00cb27(zh-cn,Expression.10).png

  5. 选择“对象和时间线”下的“FlowDocumentReader”对象,然后展开“属性”面板中的“杂项”类别。

  6. 单击“Document”属性旁边的“新建”按钮。将为“Document”属性填入一个“FlowDocument”对象,并且打开“FlowDocument”的子属性编辑器。可以展开和折叠子属性编辑器。“Document”属性只能包含一个“FlowDocument”。

    Cc294699.alert_note(zh-cn,Expression.10).gif说明:

    那些显示子属性编辑器的属性旁边通常会显示一个“新建”按钮和一个扩展箭头 Cc294699.b21226d8-0f6c-454b-98fb-1b8e22f45c99(zh-cn,Expression.10).png(如果该属性有内容)。如果该属性具有与其相关联的默认子属性,则该属性旁边还将显示一个下拉箭头。例如,“BitmapEffect”属性提供一个下拉列表,其中包括“BevelBitmapEffect”、“BlurBitmapEffect”以及其他可以从中选择的子属性。

    “Document”属性的子属性编辑器,其中显示了“Blocks”集合属性

    Cc294699.421a7657-c71e-44de-ac91-bbc8bb64800d(zh-cn,Expression.10).png

  7. 在“Document”属性的子属性编辑器中,单击“Blocks (集合)”属性旁边的“编辑此集合中的项”按钮。将打开“Blocks”属性的集合编辑器。

    Cc294699.alert_note(zh-cn,Expression.10).gif说明:

    那些显示集合编辑器的属性名称的旁边通常会显示“(集合)”一词以及“编辑此集合中的项”按钮。

    “Blocks”子属性的集合编辑器

    Cc294699.7becf751-36c9-49f0-a8bd-6308397e82ea(zh-cn,Expression.10).png

  8. 在“Blocks”子属性的集合编辑器中,单击“添加另一项”按钮。此时,将显示“选择对象”窗口,从中可以选择任何 Windows Presentation Foundation (WPF) 对象。

  9. 在“搜索”文本框中,键入 Paragraph 以快速找到“Paragraph”类。从“System.Windows.Documents”下的列表中选择“Paragraph”,然后单击“确定”。将关闭“选择对象”窗口,并将“Paragraph”项添加到集合编辑器中索引值为 0 的位置。“Paragraph”对象的属性将显示在右侧。

    Cc294699.alert_note(zh-cn,Expression.10).gif说明:

    要了解给定集合的有效对象并不是一件容易的事。对于常用控件的集合属性(如“ListBox”控件的“Items”集合属性),集合编辑器会提供一个包含建议项的下拉列表以及“添加另一项”按钮。而对于不常见的控件(如“FlowDocumentReader”控件),可以查看有关该控件类型的 MSDN 文档,也许能够帮助您了解该集合的有效元素。例如,在 MSDN流程文档概述(此链接可能指向英文页面)的“流程相关类”部分,有一张图表会显示流程文档控件的结构。在该图表中,您能够看到“Blocks”属性可以包含“Paragraph”、“Section”、“List”、“Table”和/或“BlockUIContainer”元素。在下列步骤中,将向“Paragraph”对象的“Inlines”集合属性添加“Run”元素。

  10. 在“Paragraph”对象的“属性”窗口中,单击“Inlines”属性旁边的“编辑此集合中的项”按钮。集合编辑器将切换到“Inlines”属性的范围。

  11. 单击“添加另一项”按钮,然后从“选择对象”窗口中选择“Run”类。“Run”对象便已添加到集合编辑器中索引值为 0 的位置。

  12. 在“Run”对象的“属性”窗口中,通过在“Text”属性中键入内容来进行添加。也可以使用“画笔”和“文本”类别的某些属性来设置文本的样式。其他属性将被禁用,因为这些属性必须在“FlowDocumentViewer”控件的级别上进行设置。

    添加 Run 对象并编辑 Text 之后的“Inlines”属性的集合编辑器

    Cc294699.36430950-044e-44e8-a70f-c5fa9fc7ddde(zh-cn,Expression.10).png

  13. 单击“确定”退出“Inlines”属性的集合编辑器,然后单击“确定”退出“Blocks”属性的集合编辑器。上一步中输入的文本将显示在“FlowDocumentViewer”控件中。

    Cc294699.alert_caution(zh-cn,Expression.10).gif重要事项:

    除非您希望删除刚创建的内容,否则请不要单击“FlowDocumentViewer”对象的“Document”属性旁边的“新建”按钮,这是因为“Document”属性只能包含一个“FlowDocument”对象。除非属性的名称包含“(集合)”一词,否则该属性只能包含一个对象。

Cc294699.alert_note(zh-cn,Expression.10).gif说明:

如果编辑的是“FlowDocumentScrollViewer”或“RichTextBox”对象,则可以使用 Microsoft Expression Blend 文本编辑器(选择该对象并按 F2 可访问该编辑器)。有关详细信息,请参阅编辑文本。如果编辑的是“DocumentViewer”或“FlowDocumentPageViewer”对象,则可以通过编程方式添加内容。有关详细信息,请参阅 MSDN 上的流程文档概述Windows Presentation Foundation 中的文档(这些链接可能指向英文页面)。此外,请参阅可从 Windows SDK .NET Framework 3.0 示例网站下载的 DocumentViewer 示例FlowDocumentReader 示例(这些链接可能指向英文页面)。