首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开Office异常“无法插入OpenXmlElement”"newChild“,因为它是树的一部分”

打开Office异常“无法插入OpenXmlElement”"newChild“,因为它是树的一部分”
EN

Stack Overflow用户
提问于 2014-08-08 20:28:36
回答 1查看 5.4K关注 0票数 1

我正在使用OpenOfficeSDK2.0生成一个word文档。我得到了一个异常,因为is“不能插入OpenXmlElement”newChild,因为它是树的一部分。我知道异常是由于在xml中尝试重复节点造成的,但我不知道如何修复它。

代码语言:javascript
复制
private void GenerateWord(string Path)
    {
        using (WordprocessingDocument WpDoc = WordprocessingDocument.Create(Path, WordprocessingDocumentType.Document, true))
        {
            MainDocumentPart MainPart = WpDoc.AddMainDocumentPart();

            new Document(new Body()).Save(MainPart);

            Body body = MainPart.Document.Body;
            Paragraph Getskills = Test(MainPart, body);

            body.Append(Getskills);

            MainPart.Document.Save();
            WpDoc.Close();
        }
    }

    private Paragraph Test(MainDocumentPart MainPart, Body body)
    {
        Paragraph GetSkills = new Paragraph();
        string[,] ArrSkills = new string[,] { { "Live The Dream More" }, { "And Even More" } };
        List<string> SkillsList = new List<string>();

        foreach (var Item in ArrSkills)
        {
            string Skills = Item;
            SkillsList.Add(Skills);
            if (SkillsList != null)
            {
                foreach (var GetItem in SkillsList)
                {
                    GetSkills = new Paragraph(new Run(new Text(GetItem)));
                    Run BreakRun = new Run(new Break());

                    body.Append(GetSkills);
                }
            }
        }

        return GetSkills;
    }

我只是在想,以前有没有人遇到过这个例外,他们是怎么得到它的?谢谢你能给我的建议

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-12 12:03:19

您需要克隆得到异常的节点,然后插入该克隆节点。有关示例,请参见此堆栈溢出answer

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25211754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档