我开发vs扩展,现在我需要知道文档被更改或是脏的,然后执行一些操作。
答案 0 :(得分:0)
您提到的特定事件是ITextDocument.DirtyStateChanged
,但我怀疑这可能不是您实际想要在扩展程序中使用的属性或算法。
执行此操作的一种方法(在文档更改后运行代码)正在使用BackgroundParser
类。在对文档进行更改(称为“重新分析延迟”,行为与“活动扩展”ReParseImpl
方法非常相似)后,将在一段时间后调用被覆盖的Throttle
方法。
请务必在OnParseComplete
方法中致电ReParseImpl
,就像您在此处看到的一样:
DiffUpdateBackgroundParser.cs#L106
通过构造实例并请求初始解析来启用后台解析器:
MarginCore.cs#L41-L49