我通过Code Refactoring(CodeRefactoringProvider)roslyn项目创建了一个具有一些很好的重构功能的visual studio扩展,但是在添加工具提示或菜单项或在启动时做某事时没有任何实际意义。
如果我想做一些事情,例如添加设置菜单或告诉用户他们正在试用版本,我甚至可以在何时/何时进行?即使我在vsix中工作,事件似乎也没有暴露任何地方。
CodeRefactoringProviders是否在沙盒中运行?因为我喜欢它消耗我的课程的方式,向用户展示预览并且它非常适合编辑器,但当然我想要更多的控制因为毕竟,你创建的根源是VSIX,几乎可以做任何事情在视觉工作室环境中。
我确信我可以限制重构次数并显示弹出窗口......但我相当肯定会有人发送死亡威胁。
答案 0 :(得分:3)
您可以使用与Roslyn vsix中任何其他vsix相同的方式添加其他元素。有多种方法可以执行此操作,例如使用ITextViewCreationListener
创建Visual Studio包等。
我创建的一个示例展示了如何在http://code.msdn.microsoft.com/windowsdesktop/Roslyn-Code-Issue-with-84d792dd将“工具选项”页面与Roslyn代码问题集成。