我正在使用Visual Studio 2008对象模型,如下所示:VS2008 Automation Object Model Chart

我想对VS2008 Marco中的CodeElement起作用,它是由当前.cs文档中用户的文本选择所选择的。

尽管我不太在意如何获得它,但这是我尝试的方法:VS对象模型为您提供了DTE.ActiveWindow.Selection类型的TextSelection,然后有一个DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElementFromPoint()方法采用了一个TextPointvsCMEElement作为参数,并根据需要返回CodeElment

但是我似乎无法从TextElement获得TextSelection

有人可以告诉我如何从.cs文件中的选定文本中获取CodeElement吗?

最佳答案

尝试这个:

textSelection = DTE.ActiveWindow.Selection

codeElement = textSelection.ActivePoint.CodeElement(vsCMElement.vsCMElementClass)

10-04 18:52