gpt4 book ai didi

c# - 如何在 VSTO 中使用 Find.HitHighlight 突出显示相同的范围?

转载 作者:行者123 更新时间:2023-11-30 17:36:13 31 4
gpt4 key购买 nike

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

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

但是当我执行此操作时,MS Word 会提示“Word 已到达文档末尾。是否要从头继续?”如果我选择"is",它就会起作用。但是每次运行此代码时,它都会给出相同的消息。我正在研究如何在没有消息框的情况下进行突出显示。

我最初使用以下片段来突出显示,

range.HighlightColorIndex = WdColorIndex.wdYellow

在这种方法中,它实际上改变了原始文档。

因此,我尝试使用 HitHighlight 函数进行突出显示,因为它不会创建任何永久性突出显示。

对此有什么想法吗?

最佳答案

我想要类似的东西。这是部分答案。我找到了这个 similar question on msdn ,解决方案是使用“Application.Selection 或 Doc.Content”中的 Find.HitHighlight() 调用。

现在,我无法通过 Application.Selection 让它工作,但我通过 Doc.Content 做到了:

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

不幸的是,这会突出显示文档中的每个匹配项。看看我是否能找到其他方法。但这似乎是迄今为止唯一的一个。

或者,在范围的开头添加一些独特的文本,进行搜索,然后删除文本怎么样?坏主意,没有用。

关于c# - 如何在 VSTO 中使用 Find.HitHighlight 突出显示相同的范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40012564/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com