4

我正在写我自己的扩展。我创建了一个工具栏按钮。我使用的模板是“Visual Studio Package”,并且在向导期间有一个选项可以创建一个命令按钮(或类似的东西)

所以按钮出现了,但我不知道如何获取当前文档或文档中的选定文本。

任何帮助,将不胜感激。

4

1 回答 1

8

有两种方法可以接近它:

  1. 全局处理按钮并用于DTE获取当前文档 ( DTE.ActiveDocument) 和选定文本 ( ((TextDocument)activeDoc).Selection.Text)。您可以通过以下方式获取包中的顶级DTE对象:DTE dte = GetService(typeof(SDTE)) as DTE; 请注意,活动文档可能是null.
  2. 在编辑器级别创建一个命令处理程序来处理给定的命令。我写的 Align Assignments 扩展(source)就是一个例子。这是命令过滤器的样子。
于 2010-07-02T05:26:43.450 回答