如何在VSIX扩展程序中编程刷新与代码编辑器



如何执行Visual Studio的代码编辑器?

我有一个VSIX扩展名,该扩展通过VS标记机构实现自定义着色。扩展程序具有一些设置,例如关闭着色。就像在MSDN示例中一样,它们通过DialogPage机制集成到VS设置中。我在我的ItaggerProvider createTagger实现中使用它们来决定是否应该使用标签器。

当我更改着色设置时,打开文档的着色不会刷新。但是我可以关闭并重新打开它们,然后根据新设置的值对文档进行着色。有没有办法告诉Visual Studio刷新代码编辑器并重新创建标签器?

您可以尝试关闭文档并再次打开文档。

    string path = dte.ActiveDocument.FullName;
    dte.ActiveDocument.Save();
    dte.ActiveDocument.Close();
    dte.ItemOperations.OpenFile(path);

编辑:一种更好的方法是提高在标记类中声明的事件(它实现Itagger接口)。

最新更新