Tag: visual studio sdk

以编程方式在Visual Studio项目文件中添加和编辑目标

我试图以编程方式将以下目标添加到我的Visual Studio项目文件。 我很确定IVsBuildPropertyStorage或IVsBuildPropertyStorage2将无法工作,因为需要一个ProjectItem,即项目文件中元素的节点。 我想要做的是在元素之外添加上面的xml。 我正在尝试使用Visual Studio SDK来执行此操作,并且关于执行此操作的文档和示例似乎缺乏。 截至本文发表时,我无法找到这样做的方法。 我真的想避免将项目文件(在本例中为Test.csproj)加载为XDocument或XmlDocument ,并以此方式添加Target元素节点。 它似乎很乱,可能会导致更多问题。 作为一个额外的好处,我也想IgnoreOnExit一个PostBuildEvent元素,但我很确定使用PostBuildEvent元素是不可能的

用于创建工作项模板的TFS客户端API?

当然,很有可能在TFS中创建工作项,获取工作项列表等。 除此之外,我们还需要具备允许用户为各种文件类型创建自己的工作项模板的function。 TFS客户端API是否能够将工作项模板上载到TFS服务器?

DialogPage – 字符串数组未保留

我正在开发视觉工作室的扩展。 我有一个选项页面: public class GeneralOptionsPage : DialogPage { [Category(“General”)] [DisplayName(“Foos”)] [Description(“Bla Foo Bla”)] public string[] Foos { get; set; } [Category(“General”)] [DisplayName(“Bar”)] [Description(“Bar Foo Bar”)] public string Bar { get; set; } } Bar酒店的工作非常完美并且坚持不懈。 Foos属性也可以工作(它甚至可以在选项页面中为你提供一个很好的弹出窗口,你可以在每行输入一个字符串),这意味着我可以设置它并在我的扩展中使用它,但它不会写入注册表/存储。 当我关闭VS并再次打开它时,它总是空着的。 从MSDN引用: DialogPage的默认实现支持具有适当转换器的属性,或者是可以扩展为具有适当转换器的属性的结构或数组的属性。 有关转换器列表,请参阅System.ComponentModel命名空间。 Visual Studio Extensibility Samples管理int,string和System.Drawing.Size属性。 据我所知,我正在使用System.ComponentModel命名空间中的有效组件。 那么我做错了什么? 我是否必须以不同的方式处理数组?

Visual Studio SDK – 处理文件添加,删除和重命名事件

我正在开发一个Visual Studio扩展,当用户在当前解决方案中添加,删除或重命名文件时,它应该监听事件。 这个问题的答案指出,VS提供了用于通过DocumentEvents接口监听文档事件(如保存,打开和关闭)的基础结构。 例如: Dte.Events.DocumentEvents.DocumentSaved 是否有类似的事件可以让我听取用户添加/删除/重命名文档?

在代码段中获取命名空间

这里的Microsoft链接列出了我们可以使用的三种方法。 但是我们如何获得当前的命名空间? 我看到有一个类似的问题,但答案是使用宏,这不解决这个具体的问题。 NameSpace()做这样的事情: . . namespace NameSpace()

VS 2013 SDK:如何仅为代码窗口编辑器键绑定热键?

在C#或VB.Net中 ,使用Visual Studio 包 ,我想为CommandBarButton分配一个自定义键盘快捷键,例如Ctrl + E + R ,然后,当按下时,关联的CommandBarButton应调用其Execute方法(I设想)。 我怎么能这样做? 更新 (请避免上述问题,该问题已经得到解答。) 其实我正在使用vsct文件,然后我的键绑定是这样的: MSDN解释说guidVSStd97是全局的,它似乎影响到IDE的所有部分: https://msdn.microsoft.com/en-us/library/bb165973%28v=vs.90%29.aspx 要在全局范围内定义键绑定,请使用编辑ID值guidVSStd97。 我的扩展程序使用代码窗口的选定文本,因此它很奇怪,例如在解决方案资源管理器中,或任何加载的项目,我能够按热键。 然后,我希望能够仅在代码窗口编辑器中按下该热键(Ctrl + E + R)。 我的问题是: 哪个是代码窗口编辑器的编辑器ID? 附加要求: 我需要一个MSDN参考来查看更多相关的编辑器ID,我找不到任何相关的内容。

获取VS Add-in或DXCore插件的解决方案/项目文件列表

我正在尝试为Visual Studio编写一个加载项,除其他外,需要跟踪Visual Studio解决方案中的每个文件。 我知道我需要订阅什么事件(当打开解决方案时,在其中添加/删除/编辑文件时,项目中的文件相同等),但我不明白如何实际获取文件列表从任何一个。 我最近安装了CodeRush并且一直在使用DXCore框架。 我很高兴它的插件方法,但我仍然没有看到一个明显的方法来获得解决方案中的文件列表。 总结一下: 如何通过Visual Studio SDK 或 DXCore获得解决方案及其项目中可靠的文件列表?