【问题标题】:How to get the selected items on Source Control History window when creating a Visual Studio Extension?创建 Visual Studio 扩展时如何获取源代码管理历史记录窗口中的选定项目?
【发布时间】:2018-06-12 04:07:06
【问题描述】:

我开发了一个 Visual Studio 扩展。我在源代码管理历史记录窗口的上下文菜单中附加了一个按钮(上面有“变更集详细信息”、“比较”等的菜单)

我需要从窗口中获取选定的历史记录项,但不知道该怎么做。

更新:

我正在使用团队基础服务器作为源代码控制。这是我要访问的窗口的屏幕截图。 Screenshot

我找到了一种方法来检索窗口对象的数据,但我仍然有一些问题:

package.FindToolWindow(typeof(/*I don't know the type of the window*/), 0, false);

(包是 Microsoft.VisualStudio.Shell.Package 类的实例)

源代码管理历史记录窗口(屏幕截图上的那个)是什么类型的?这是我认为的难题中缺少的部分。

请帮忙:) 谢谢。

【问题讨论】:

  • 您使用了哪种源代码管理工具?你能分享一个关于你想要菜单/历史项目的窗口的屏幕截图吗?
  • 我已经更新了问题:我使用了 TFS 源代码控制。
  • @Belian 你有没有得到这个工作?我正在尝试对 Visual Studio Git 历史(可能最终也可能是 TFS/DevOps)做类似的事情。 My question is here.

标签: c# visual-studio visual-studio-2017 visual-studio-extensions


【解决方案1】:

也许这会对您的需求有所帮助: Tool Window

我不知道你的其他代码部分,但我猜你启动了一个窗口应用程序,你想在其中呈现历史列表。 此窗口应用程序需要:

private FirstToolWindow window;
private void ShowToolWindow(object sender, EventArgs e)  
{ 
     window = (FirstToolWindow) this.package.FindToolWindow(typeof(FirstToolWindow), 0, true); 
...

【讨论】:

  • 谢谢你的链接,我去看看!
  • 不,我的目标是从历史窗口中获取实际选择的历史项目。所以我想检索一些数据(更准确地说,我想要 selected history items changeset ids
猜你喜欢
  • 2020-10-11
  • 1970-01-01
  • 2013-04-02
  • 1970-01-01
  • 1970-01-01
  • 2018-11-04
  • 2017-12-17
  • 2013-05-01
  • 1970-01-01
相关资源
最近更新 更多