我正在尝试访问FlowDocument
(RichTextBox
)的内容。我想这样做是因为我想将内容转换为UBB格式string
(是的,旧的论坛格式文本)。有没有办法获取FlowDocument
内容的内容:
我知道通过FlowDocuments
的Blocks
属性,您可以Blocks
内的FlowDocument
获取BlockUIContainer
,List
,Paragraph
{},Section
,Table
或FlowDocument
个对象,可以看作here。但是,如果我想要LogicalChildren
Paragraph
,例如,它受保护且因此无法访问。所以..这不是要走的路。什么是? (我还没有找到另一种方式。)
另外,我知道将RichTextBox
的内容转换为XAML等等。但是我找到的转换器不包括图像对象和我发现有用的其他一些对象,并由{{1}显示}。
提前致谢!
答案 0 :(得分:3)
啊!我找到了解决方案......
BlockUIContainer
有Child
作为回报,它可以包含其他所有内容(只要它来自UIElement
)Paragraph
上称为Inlines
。这将返回Inline
。List
其名为ListItems
。这包含ListItem
的集合(其中包含Blocks
,因此包含其中任何一个。Sections
还包含Blocks
Table
有RowGroups
,其中包含TableRowGroup
等等。我一直傻到不考虑ContentPropertyAttribute
......
答案 1 :(得分:0)
为什么不使用XmlDocument?
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.LoadXml(XamlWriter.Save(richTextBox.Document));
有一些有趣的可能性e。 G。使用带有xpath的节点选择。