Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将节添加到ContentRange对话框_C#_.net_Asp.net Mvc_Gembox Document - Fatal编程技术网

C# 将节添加到ContentRange对话框

C# 将节添加到ContentRange对话框,c#,.net,asp.net-mvc,gembox-document,C#,.net,Asp.net Mvc,Gembox Document,我试图使用GemBox将整个部分添加到特定事件中 Section section = new Section(documentModel); documentModel.Sections.Add(section); ContentRange backgroundCheckSection = documentModel.Content.Find("@@BackGroundChecks").First(); backgroundCheckSection.Start.InsertRange(sect

我试图使用GemBox将整个部分添加到特定事件中

Section section = new Section(documentModel);
documentModel.Sections.Add(section);

ContentRange backgroundCheckSection = documentModel.Content.Find("@@BackGroundChecks").First();
backgroundCheckSection.Start.InsertRange(section);

此代码无法工作,因为它无法将ContentRange对象隐式转换为Section对象。目标是将整个部分添加到变量@@BackgroundChecks出现的位置。我还不知道怎么做,不知道是否有人能帮我。

我不确定你想要完成什么,但为了插入该部分的内容范围,你只需要执行以下操作:

backgroundCheckSection.Start.InsertRange(section.Content);
foreach(var block in section.Blocks)
    backgroundCheckSection.Start.InsertRange(block.Content);
如果你能提供更多你想要实现的细节,我可以进一步帮助你

然而,我假定您不希望在文档中插入一个节(这将把插入的节分成两部分,这样您将得到三个节),您只希望将该节的内容插入到指定的位置(您的占位符“@@BackGroundChecks”所在的位置)

因此,与其插入
section.Content
,不如迭代
section.Blocks
并插入其内容,如下所示:

backgroundCheckSection.Start.InsertRange(section.Content);
foreach(var block in section.Blocks)
    backgroundCheckSection.Start.InsertRange(block.Content);
之后,您可能需要删除该占位符:

backgroundCheckSection.Delete();
如果确实要插入节,请注意,每个节都用分节符分隔,您可以操纵节从何处开始(例如,它是从新页开始还是在上一节之后继续)。您可以通过设置
section.PageSetup.SectionStart
属性来完成此操作