c# - Visual Studio 2012 扩展困境

标签 c# visual-studio-2012 sdk editor customization

我正在尝试创建一个 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/

相关文章:

c# - Asp.net DropdownList 源具有值但抛出空异常

c++ - VS2012 MSTest 无法捕获断言, native c++

sdk - Windows Phone 模拟器无法连接到 Windows Phone 操作系统

javascript - 这个 javascript 对象在 C# 中相当于什么

c# - 如何获取列表或枚举具有相同类和名称的非托管窗口的所有句柄

c# - IDX10503 : Signature validation failed. token 没有 child 。尝试的 key : 'System.Text.StringBuilder'

c# - 如何编译 32 位(我的操作系统是 64 位)- 错误 exe 不是有效的 Win32 应用程序

WPF 应用程序更改大小

c++ - 这是病毒还是sdk附件?

android - 为什么 MapFragment(HERE-API) 扩展了 android.app.Fragment 而不是 android.support.v4.app.Fragment?