从StdContentComboBox中获取选定的值

时间:2013-02-19 16:30:49

标签: .net openxml openxml-sdk docx

我想从StdContentComboBox中获取所选值,这是放置在docx文档中的Content控件。我需要在.NET中获取所选值,谢谢

1 个答案:

答案 0 :(得分:0)

试试这个:

using (WordprocessingDocument myDoc = WordprocessingDocument.Open("yourDocPath", true))
{
    var sdtElements = myDoc.MainDocumentPart.Document.Body.Descendants<SdtElement>();
    var contentControlsWithComboBoxes = sdtElements.Where(x => x.SdtProperties.Elements<SdtContentComboBox>().Any());

    var contentRuns =
        contentControlsWithComboBoxes.Select(x => x.Elements<SdtContentRun>());
    var selectedValues  = contentRuns.Select(x => x.FirstOrDefault().InnerText); // Your selected combobox values 

}