Word COM Addin:如何迭代未连续选定文本的所有部分(Ctrl键)

时间:2013-03-13 09:56:38

标签: vb.net ms-word office-interop

我正在开发Word 2007/2010 COM Addin,它可以帮助用户在Word文档中应用自定义样式。

目前我成功地在连续选定的文本(甚至多个段落)上应用样式,但是当我尝试不连续选择时(由于'Ctrl'键而在文档的不同部分选择的文本),只有最后一个选定的部分是风格化的。

如果选择不连续,我如何迭代不同的选定部分?

提前致谢,

1 个答案:

答案 0 :(得分:1)

我终于找到了一个解决方法,我将在下面公开感兴趣的人:

我使用WindowSelectionChange来捕获我的word文档中的每个选择更改,其中我将代码放在下面

Public mySelectionStack as ArrayList

If My.Computer.Keyboard.CtrlKeyDown Then   
    mySelectionStack.Add(Sel.Range)
Else                                  
    mySelectionStack = New ArrayList()
    mySelectionStack.Add(Sel.Range)
End If

然后,我可以在mySelectionStack上为每个选项执行一个操作,将专用行为应用于选择的每个部分。