如何使用查找突出显示相同的范围.在VSTO中的HitHighlight

本文关键字:范围 VSTO HitHighlight 中的 查找 何使用 显示 | 更新日期: 2023-09-27 18:12:47

我试图使用以下函数突出显示相同的范围,

range.Find.HitHighlight(range.Text.Substring(0, range.Text.Length));

但是当我这样做时,MS Word给出一条消息说"Word已到达文档的末尾"。你想从头开始吗?"如果我选择"是",它会工作。但是这段代码每次运行时都会给出相同的消息。我正在研究如何在没有消息框的情况下进行高亮显示。

我最初使用了下面的代码片段来突出显示

range.HighlightColorIndex = WdColorIndex.wdYellow

这种方法实际上改变了原始文档。

因此,我尝试使用HitHighlight函数来做高亮,因为它不创建任何永久高亮。

有什么想法吗?

如何使用查找突出显示相同的范围.在VSTO中的HitHighlight

我想要类似的东西。这只是部分答案。我在msdn上发现了这个类似的问题,解决方案是使用"Application中的Find.HitHighlight()调用。选择或Doc.Content"

现在,我无法让它从应用程序工作。选择,但我是从博士那里得到的。内容:

myrange.Application.ActiveDocument.Content.Find.HitHighlight( myrange.Text.Substring( 0, myrange.Text.Length ) );

不幸的是,这会突出显示文档中的每个匹配项。我会看看能不能找到别的办法。但这似乎是目前为止唯一的一个。

或者,如何在范围的开始添加一些唯一的文本,做搜索,然后删除文本?坏主意,没用