0
我已經編寫了下面的代碼,在文檔的頁腳的contentcontrol中插入一些文本。OpenXML插入到內容控件中丟失Word.Text
oItem.File.CheckOut();
byte[] byteArray = oItem.File.OpenBinary();
using (MemoryStream mem = new MemoryStream())
{
mem.Write(byteArray, 0, (int)byteArray.Length);
using (WordprocessingDocument wp = WordprocessingDocument.Open(mem, true))
{
Boolean foundInFooter = false;
MainDocumentPart mainPart = wp.MainDocumentPart;
foreach (FooterPart footerPart in mainPart.FooterParts)
{
Word.Footer footer = footerPart.Footer;
foreach (Word.SdtElement sdt in footer.Descendants<Word.SdtElement>().ToList())
{
Word.SdtAlias alias = sdt.Descendants<Word.SdtAlias>().FirstOrDefault();
if (alias.Val.Value == "Revisionsnummer")
{
foundInFooter = true;
if (sdt.Descendants<Word.Text>().FirstOrDefault() != null)
{
sdt.Descendants<Word.Text>().FirstOrDefault().Text = (string)oItem["Version"];
}
}
}
}
}
}
出於某種原因有時sdt.Descendants<Word.Text>().FirstOrDefault()
返回NULL,所以我不能插入文本。無論如何,在這些情況下添加Word.Text?
我的問題也許不清楚,但即時詢問是什麼,我應該把其他語句,如果obj == null插入文本內容控制? – 2013-05-07 13:46:32
它應該可以做,因爲我張貼因爲我首先檢查空值,但什麼在別的聲明是我的問題希望你明白:) – 2013-05-07 13:49:19