У меня есть некоторые данные, которые я хочу представить в FlowDocument
. Это будет в основном представление, которое объясняет данные в удобной форме, с заголовками разделов, абзацами текста и т. Д., И которое я буду отображать в FlowDocumentScrollViewer.
Для этого я хотел бы создать маркированный список (<List>
) из содержимого ObservableCollection
. Я знаю, как это сделать с ItemsControl
, но как мне это сделать для ListItem
элементов в FlowDocument
, поскольку они являются частью иерархии классов TextElement
, а не Control
? Есть ли эквивалент ItemsControl
для текстового содержимого внутри TextBlock
или FlowDocument
?
Редактировать: Статья , с которой Сергей связан, является идеальной отправной точкой. Единственная проблема заключается в том, что код статьи может использовать только Section
или TableRowGroup
в качестве панели элементов и пока не поддерживает использование <List>
. Но это было тривиально исправить - просто добавить этот код в конце ItemsContent.GenerateContent
, перед финальным else
:
else if (panel is List)
((List) panel).ListItems.Add((ListItem) element);