如何强制刷新Visual Studio的代码编辑器?
我有一个VSIX扩展,它通过VS标记机制实现自定义着色。扩展程序有一些设置,例如关闭着色。它们通过DialogPage机制集成到VS设置中,就像在MSDN示例中一样。我在我的ITaggerProvider CreateTagger实现中使用它们来决定是否应该使用tagger。
当我更改着色设置时,打开的文档的颜色不会刷新。但我可以关闭并重新打开它们,然后根据新设置的值对文档进行着色。 有没有办法告诉Visual Studio刷新代码编辑器并为其重新创建标记器?
答案 0 :(得分:1)
您可以尝试关闭文档并再次打开。
string path = dte.ActiveDocument.FullName;
dte.ActiveDocument.Save();
dte.ActiveDocument.Close();
dte.ItemOperations.OpenFile(path);
编辑:更好的方法是引发在tagger类中声明的事件(实现ITagger接口)。