如何使用VS包

时间:2015-05-04 10:31:06

标签: visual-studio-2012 tfs tfs2012 vsix

我创建了VS扩展,通过右键单击它打开自定义窗体,在Source控件浏览器上创建一个菜单命令,现在我想在该自定义窗体中显示当前TFS路径(用户右键单击)。作为TFS “分支和合并=>分支”源路径。

任何帮助感谢。

2 个答案:

答案 0 :(得分:0)

源控制资源管理器的可扩展性应通过VersionControlExt.Explorer类公开。 VersionControlExt.Explorer.SelectedItems属性应包含所选项的服务器路径。这是一个old blog post,可能还有一些有用的信息来编写扩展。

答案 1 :(得分:0)

您可以使用VersionControlExplorerExt对象及其属性SelectedItems,CurrentFolderItem等。从包中可以看出:

  private void MenuItemCallback(object sender, EventArgs e)
  {
     Microsoft.VisualStudio.TeamFoundation.VersionControl.VersionControlExt versionControlExt;
     Microsoft.VisualStudio.TeamFoundation.VersionControl.VersionControlExplorerExt versionControlExplorerExt;
     EnvDTE.DTE dte;

     try
     {
        dte = base.GetService(typeof(EnvDTE.DTE)) as EnvDTE.DTE;

        versionControlExt = dte.GetObject("Microsoft.VisualStudio.TeamFoundation.VersionControl.VersionControlExt") 
           as Microsoft.VisualStudio.TeamFoundation.VersionControl.VersionControlExt;

        versionControlExplorerExt = versionControlExt.Explorer;

        MessageBox.Show(versionControlExplorerExt.CurrentFolderItem.LocalPath);

     }
     catch (Exception ex)
     {
        MessageBox.Show(ex.ToString());
     }

  }