我正在尝试创建一个 Visual Studio 2012 扩展,它提供对具有已定义架构的 XML 文件的自定义编辑、支持具有已定义扩展名的文件并利用 VS 属性 Pane - 所有这些都与内置的方式非常相似。在 Visual Studio WebTest/LoadTest TreeView 编辑器中。
我已经下载了 VS2012 SDK 并尝试了各种项目类型。我认为我需要某种“Visual Studio 包” - 最有可能是“工具窗口”或“自定义编辑器”。
工具窗口模板生成一个简单的 WPF 控件,我可以用它来显示 TreeView ,但感觉不是正确的选择,因为我真的想要一个可停靠文档窗口,支持通过 TreeView 编辑文件。
自定义编辑器模板会生成一个精心设计的 RTF 编辑器,支持我不需要的一系列 UI 文本编辑功能和交互,并且似乎是基于 Windows 窗体的。 Microsoft 对 WebTest TreeView 编辑器使用什么类型的扩展?
任何人都可以告诉我 VSPackage 方法是否走在正确的轨道上并为我指明正确的方向吗?
最佳答案
好吧,经过几天的斗争,我想我可以回答我自己的问题了。
工具窗口通常是 Visual Studio IDE 中的单个实例,通常不用于编辑文档,而文档窗口通常支持多个实例(MDI 子窗口),用于编辑和保留文档,可以与属性网格交互,检测 IDE 外部文档的更改,并与内置 IDE 文件/新建良好配合;节省;另存为菜单和工具栏。
我在 http://msdn.microsoft.com/en-us/library/bb330853.aspx 找到了一个很好的描述其中包括以下声明:
“工具窗口不用于编辑文档,既不作为文本编辑器,也不作为拖放设计器。相反,文档编辑是由文档窗口处理的,文档窗口出现在 Visual Studio 的选项卡式中心区域中.”
因此,虽然我想使用 TreeView 用户界面,但我本质上是在创建一个自定义文档编辑器,因此需要一个文档窗口。尽管 Visual Studio 文档窗口模板提供了 RTF 编辑器实现,但我可以用 TreeView 实现替换其中的大部分内容。
关于c# - Visual Studio 2012 扩展困境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16583814/