Fra*_*nor 6 c# interop ms-word list
我有以下代码,应该将项目符号列表添加到我自动生成的Word文档中。从其他答案来看,我相信代码是正确的,但结果根本没有产生任何要点,它似乎也没有应用缩进。有任何想法吗?
Microsoft.Office.Interop.Word.Paragraph assets;
assets = doc.Content.Paragraphs.Add(Type.Missing);
// Some code to generate the text
foreach (String asset in assetsList)
{
assetText = assetText + asset + "\n";
}
assets.Range.ListFormat.ApplyBulletDefault(Type.Missing);
// Add it to the document
assets.Range.ParagraphFormat.LeftIndent = -1;
assets.Range.Text = assetText;
assets.Range.InsertParagraphAfter();
Run Code Online (Sandbox Code Playgroud)
发生这种情况是因为您在范围之后添加了多个段落(似乎设置 Text 属性相当于 InsertAfter)。您想要在范围之前插入,以便应用您设置的格式。
Paragraph assets = doc.Content.Paragraphs.Add();
assets.Range.ListFormat.ApplyBulletDefault();
string[] bulletItems = new string[] { "One", "Two", "Three" };
for (int i = 0; i < bulletItems.Length; i++)
{
string bulletItem = bulletItems[i];
if (i < bulletItems.Length - 1)
bulletItem = bulletItem + "\n";
assets.Range.InsertBefore(bulletItem);
}
Run Code Online (Sandbox Code Playgroud)
请注意,我们为除最后一项之外的所有项目添加了段落结束标记。如果您在最后添加一个,您将得到一个空项目符号。
| 归档时间: |
|
| 查看次数: |
18300 次 |
| 最近记录: |