我有一些数据要呈现在FlowDocument
. 这基本上是一个以友好的方式解释数据的视图,包括节标题、文本段落等,我将在 FlowDocumentScrollViewer 中显示。
为此,我想<List>
从ObservableCollection
. 我知道如何使用 来做到这一点ItemsControl
,但是我该如何对 a 中的ListItem
元素进行操作FlowDocument
,因为它们是TextElement
类层次结构而不是Control
层次结构的一部分?a or中是否有相当于ItemsControl
for 文本内容的内容?TextBlock
FlowDocument
编辑: Sergey 链接到的文章是完美的起点。唯一的问题是文章的代码只能使用 aSection
或 aTableRowGroup
作为项目面板,还不支持使用 a <List>
。但这很容易解决 - 只需在结尾添加这段代码ItemsContent.GenerateContent
,就在决赛之前else
:
else if (panel is List)
((List) panel).ListItems.Add((ListItem) element);