3

我有一个IWpfTextViewConnectionListener基础扩展。我需要访问与我获得的EnvDTE.Document相关联的权限IWpfTextView。我试过 storage _DTE.ActiveDocument,但这仅适用于以前未打开的文件(如果文件已打开,则为null)。

如何获取正在显示的文本视图的文档对象?

4

1 回答 1

5

从一个IWpfTextView.TextBuffer,你可以得到ITextBuffer。从中,您可以使用ITextDocumentFactoryService.TryGetTextDocument()来获取匹配项ITextDocument(如果存在)。然后,ITextDocument.FilePath为您提供文件的路径。

然后,您可以枚举DTE2.Documents集合以找到具有相同路径的打开文档。

更多信息:http ITextDocumentFactoryService: //msdn.microsoft.com/en-us/library/microsoft.visualstudio.text.itextdocumentfactoryservice.aspx

于 2012-12-21T01:35:57.577 回答