VSTO:在选定的句子后插入文字

时间:2015-07-26 15:04:35

标签: visual-studio-2013 range vsto sentence

我正在使用VS 2013 + VSTO创建一个Word加载项。当用户单击上下文菜单中的自定义按钮时,将调用以下函数,并应在所选句子后插入文本。

public void xyz(Office.IRibbonControl control)
    {
        Word.Sentence sent = Globals.ThisAddIn.Application.Selection.Sentences;
        Word.Range rng = sent.Last;
        String txt;

        if (rng.Characters.Last == " ")
        {
            txt = "This is a Test(1). ";
        }
        else
        {
            txt = " This is a Test(2). ";
        }
        rng.InsertAfter(txt);
    }

如果选择了文本最后一句中的字符/单词,则加载项将插入第二个文本。但是如果对新插入的最后一个句子(现在以空格结尾)执行相同的操作,则外接程序会再次插入第二个文本(而不是第一个),这会产生一个双空格(例如“Hello World”)这是一个测试(2)。 __ 这是一个测试(2)。“)。

为什么句子不包含空格的任何建议(就像你选择除了最后一句之外的任何其他句子一样)?

0 个答案:

没有答案