小编six*_*t04的帖子

如何使用word interop一次一个地添加项目到word文档的新行

我试图将这三种类型的内容添加到word doc中.这就是我现在尝试这样做的方式.但是,每个项目都会替换最后一个项目.添加图像始终会添加到页面的开头.我有一个循环调用函数来创建标题和表,然后添加图像.我认为问题是范围.我使用对象start = 0的起始范围;

如何让这些一次添加一个到文档中的新行?

foreach (var category in observedColumns)
            {

                CreateHeadersAndTables();
                createPictures();
            }
Run Code Online (Sandbox Code Playgroud)

添加标题:

                object start = 0;
                Word.Range rng = doc.Range(ref start , Missing.Value);
                Word.Paragraph heading;
                heading = doc.Content.Paragraphs.Add(Missing.Value);
                heading.Range.Text = category;
                heading.Range.InsertParagraphAfter();
Run Code Online (Sandbox Code Playgroud)

添加表格:

            Word.Table table;
            table = doc.Content.Tables.Add(rng, 1, 5);
Run Code Online (Sandbox Code Playgroud)

添加图片:

            doc.Application.Selection.InlineShapes.AddPicture(@path);
Run Code Online (Sandbox Code Playgroud)

.net c# ms-word office-interop

8
推荐指数
1
解决办法
2万
查看次数

在单词互操作中使用选择和范围

范围和选择如何工作?

如果您通过范围在页面顶部插入某些内容,是否通过插入带有选区的内容来覆盖?选择会影响范围吗?

我遇到问题,我按此顺序插入,但InlineShapes显示在Range.Inserts上方文档的顶部.此外,Selection.InsertBefore被InlineShapes取代.

我希望我的范围插入显示在每张图片上方,如标题.如何才能做到这一点?

Selection.InsertBefore
**Loop**
     Range.InsertParagraphAfter
     Selection.InlineShapes.AddPicture
**End Loop** 
Run Code Online (Sandbox Code Playgroud)

我已经三次问了这样一个问题而没有回复.什么都有帮助!

编辑:

我离我更近了一步.现在,当我添加InlineShapes时,我使用Content.InlineShapes.AddPicture(FileName:x,range:y).现在图片显示在段落之间,但它们位于我添加图片之前添加到文档的表格的第一个单元格中.我添加了折叠范围的表格.

.net c# interop ms-word office-interop

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

.net ×2

c# ×2

ms-word ×2

office-interop ×2

interop ×1