DTE.ActiveWindow.SelectionをVS2008マクロで最も近いCodeElementにするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/470117

質問

ここに見られるように、Visual Studio 2008オブジェクトモデルを使用しています: VS2008オートメーションオブジェクトモデルチャート

VS2008 MarcoのCodeElementを操作します。これは、現在の.csドキュメントでユーザーが選択したテキストによって選択されます。

どのように取得するかはあまり気にしませんが、これは私が試したものです:VSオブジェクトモデルはDTE.ActiveWindow.Selectionを提供しますTextSelectionタイプであり、次に< DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElementFromPoint()およびTextPointをパラメーターとして使用し、必要なvsCMEElementを返します。

ただし、CodeElmentからTextElementを取得できないようです。

.csファイルで選択したテキストから<=>を取得する方法を教えてもらえますか?

役に立ちましたか?

解決

これを試してください:

textSelection = DTE.ActiveWindow.Selection

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top