相关疑难解决方法(0)

VSTO 2007:如何确定范围的页面和段落编号?

我正在构建一个MS Word加载项,它必须从文档中收集所有评论气球并在列表中汇总它们.我的结果将是一个ReviewItem类列表,其中包含Comment本身,段落编号和注释文本所在的页码.

我的部分代码如下所示:

    private static List<ReviewItem> FindComments()
    {
        List<ReviewItem> result = new List<ReviewItem>();
        foreach (Comment c in WorkingDoc.Comments)
        {
            ReviewItem item = new ReviewItem()
            {
                Remark = c.Reference.Text,
                Paragraph = c.Scope. ???, // How to determine the paragraph number?
                Page = c.Scope. ??? // How to determine the page number?
            };
            result.Add(item);
        }
        return result;
   }
Run Code Online (Sandbox Code Playgroud)

该类的Scope属性Comment指向注释所涉及的文档中的实际文本,并且是类型Microsoft.Office.Interop.Word.Range.我无法弄清楚如何确定该范围所在的页面和段落.

对于段落编号,我实际上是指段落的"编号列表"编号,例如"2.3"或"1.3.2".

有什么建议?谢谢!

c# vsto ms-word

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

如何使用C#4.0中的Microsoft.Office.Interop.Word检测Word文档中的空段落?

我想使用Microsoft.Office.Interop.Word检测Word文档中的空段落.假设,如果我的word文档有一些空段落,那么

假设第3段是空段......

Microsoft.Office.Interop.Word.Paragraph para = wordDoc.Content.Paragraphs[3];
int cSent = para.Range.Sentences.Count;

for (int j = 1; j <= cSent; j++)
{
 Microsoft.Office.Interop.Word.Range sent = para.Range.Sentences[j];
 MessageBox.Show("Sent lines :" + sent.Text.ToString());
}
Run Code Online (Sandbox Code Playgroud)

然后空段落取了最后一个非空段的最后一句.所以,我无法在我的Word文档中检测到空段落.

有没有办法获得空段落列表?

请指导我摆脱这个问题......

interop ms-word office-interop c#-4.0

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

标签 统计

ms-word ×2

c# ×1

c#-4.0 ×1

interop ×1

office-interop ×1

vsto ×1