如何从 OpenXml 中获取段落列表的所有 运行 元素作为列表

How to Get Paragraph List's all run elements as a List from OpenXml

您好,我有 OpenXmlElement List<OpenXmlElement> 的列表,它是 OpenXMLElement 的段落,我想从段落列表中获取所有运行。

List<OpenXmlElement> oFieldNodes = GetParagraphs();
// this will return first paragraph's all runs.
List<Run> oRuns = oFieldNodes[0].Descendants<Run>().ToList<Run>(); 

如何使用 lambda 表达式或 linq 从 oFieldNodes 的所有段落中获取运行列表。

如有任何帮助,我们将不胜感激。 谢谢

您可以使用SelectMany

List<Run> oRuns = oFieldNodes.SelectMany(o => o.Descendants<Run>()).ToList<Run>();