我正在使用此代码在生成的Word文档中设置自动枚举,但它工作正常,但我需要从特定值开始计算,例如page_1 - 3,page_2 - 4,page_3 - 5等
//define currentpage object
object currentPage = WdFieldType.wdFieldPage;
activeWindow.ActivePane.View.SeekView = WdSeekView.wdSeekCurrentPageFooter;
//set alignment
activeWindow.ActivePane.Selection.Paragraphs.Alignment = WdParagraphAlignment.wdAlignParagraphLeft;
//Add page number
activeWindow.Selection.Fields.Add(activeWindow.Selection.Range, ref currentPage, ref oMissing, ref oMissing);
在Word中,您可以通过“插入 - >页码 - >格式页码 - >设置”开始于“ C#中有相同的属性吗?
解决! 我们所要做的就是设置这个2属性:
activeWindow.ActivePane.Selection.HeaderFooter.PageNumbers.RestartNumberingAtSection = true;
activeWindow.ActivePane.Selection.HeaderFooter.PageNumbers.StartingNumber = 666;
答案 0 :(得分:2)
我知道找出在Word中处理内容的方法的最好方法是录制宏,然后查看生成的代码。这是VB,但将其转换为C#非常容易。 在Word 2007中,如果我录制一个更改Start的宏,那么你正在谈论我正在获得以下宏 -
Sub Macro1()
'
' Macro1 Macro
'
'
With Selection.Sections(1).Headers(1).PageNumbers
.NumberStyle = wdPageNumberStyleArabic
.HeadingLevelForChapter = 0
.IncludeChapterNumber = False
.ChapterPageSeparator = wdSeparatorHyphen
.RestartNumberingAtSection = True
.StartingNumber = 3
End With
End Sub
您只对更改StartingNumber属性感兴趣,而且转换为C#非常简单。