C# 在对文档进行更改后,如何更新特定范围的开始和结束位置?
我正在用C#创建MS Office Word加载项。在处理文档时,我需要从文档中获取一些信息 我获取文档的某个C# 在对文档进行更改后,如何更新特定范围的开始和结束位置?,c#,com,ms-word,range,office-interop,C#,Com,Ms Word,Range,Office Interop,我正在用C#创建MS Office Word加载项。在处理文档时,我需要从文档中获取一些信息 我获取文档的某个范围,并保存它 例如,在文本中: Text1 text2text3text4 我保存“text3”的范围。它的Startposition=13,Endposition=17(据我所知,字符数) 如果我更改此单词前面的文本: Text1新TEXT TExt2 text3 text4 其范围的位置将保持不变。当尝试选择文本时,我得到的文本范围不正确 编辑文档后,是否有方法更新范围对象的数据?
范围
,并保存它
例如,在文本中:
Text1 text2text3text4
我保存“text3”的范围
。它的Start
position=13,End
position=17(据我所知,字符数)
如果我更改此单词前面的文本:
Text1新TEXT TExt2 text3 text4
其范围的位置将保持不变。当尝试选择文本时,我得到的文本范围不正确
编辑文档后,是否有方法更新范围
对象的数据?状态:
每个范围对象由起始和结束字符位置定义
那么你的假设是:
我保存“text3”的范围。它的开始位置=13,结束位置=17(据我所知,字符数)
。。。这是正确的
其范围内的位置将保持不变。当尝试选择文本时,我得到的文本范围不正确
我相信这是预期的行为,我认为它非常符合文档中关于范围的说明:
是否有方法在编辑后更新范围对象的数据
文件
据我所知,这是不可能的,而且据我所知,也没有说这应该是可能的
起初,我认为可能存在一个封装此类功能的Word
对象,文档上的Words
集合只包含表示每个单词的范围,这也没有多大帮助。感谢您的回复!我同意你的看法。我继续寻找问题的解决方案,但我认为我需要手动编写这个算法。我在做什么。