Visual Studio DTE2: как получить текстовое содержимое текущего документа - PullRequest
4 голосов
/ 09 апреля 2010

Я разработал пакет для расширения Visual Studio. Как часть этого, у меня есть контекстное меню, которое должно обрабатывать все текстовое содержимое активного документа (редактор HTML).

Я понимаю, как получить текущий выбор: TextSelection txtSelection = (TextSelection) _bllManager.CurrentDocument.Selection;

Но я не понимаю, как получить все содержимое окна кода, если ничего не выбрано.

В настоящее время я использую обходной метод txtSelection.SelectAll (), но он перемещает курсор, и я этого не хочу.

Есть предложения?

Спасибо.

1 Ответ

5 голосов
/ 09 апреля 2010

Это можно сделать с помощью точек редактирования:

var document = (TextDocument)_bllManager.CurrentDocument.Object("TextDocument");
var editPoint = document.CreateEditPoint(document.StartPoint);
var text = editPoint.GetText(document.EndPoint);
...