扩展Visual Studio代码审查功能

时间:2015-08-27 22:10:06

标签: visual-studio visual-studio-2013 tfs visual-studio-2015

我有兴趣编写Visual Studio 2013+扩展,增强了TFS中现有的代码审查功能。此扩展将在团队资源管理器 - 代码审查窗口中的每个注释旁边添加一个附加控件。它还需要挂钩保存注释的事件,并根据控件的值更新注释的文本。

我已经为Visual Studio编写了一些创建工具窗口等的扩展,所以对我来说这不是一个全新的领域。但是,我不清楚如何在现有窗口(例如代码审查窗口)的事件中添加挂钩内容,并且文档似乎对如何处理此问题非常清楚。我的问题是:

- 是否可以使用Visual Studio扩展向现有窗口添加控件?或者扩展功能仅限于使用自定义UI添加新工具窗口?这可以作为现有代码审查功能的扩展,还是必须完全重新实现代码审查功能,因为像Review Assistant这样的扩展似乎可以做到?

- 是否有任何关于Visual Studio IDE中的代码审查窗口或任何允许扩展与其接口的类的具体文档?如果IDE中记录了与代码评审相关的任何事件(即:保存评论时触发的事件),这将特别有用。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

几个月前,我们也处于同样的情况,但是在CodeReviewPage中禁用了一个控件。

我们所做的是在CodeReviewPage中添加了一个隐藏的部分。当此部分 Initialize(object sender,...) ,并且作为参数收到发件人对象时,我们使用Reflection来显示 CodeReviewPage 对象,然后进一步探索我们想禁用的内部控件。然后将此对象类型化为Control类,然后我们为该控件公开了所有属性,然后我们只应用了ctrlObj.IsEnable = false

对于您的情况,您可以从发件人对象的 CodeReviewPage 对象中公开部分,然后修改该部分或添加新控件并将一些事件绑定到它。