Code: Select all
var doc = dte.ActiveDocument;
if (doc == null)
return;
var selection = doc.Selection as TextSelection;
if (selection == null)
return;
string lines = selection.Text;
bool modified = false;
... // Edit text, result into replacementText
if (modified)
{
selection.ReplacePattern(lines, replacementText, (int) vsFindOptions.vsFindOptionsNone);
}
Dies ist das vollständige Beispiel zum Ersetzen von Text:
Code: Select all
MutationResult result = await this.Extensibility.Editor().EditAsync(
batch =>
{
var editor = document.AsEditable(batch);
editor.Replace(textView.Selection.Extent, newGuidString);
},
cancellationToken);
In diesem Dokument beschreibt Microsoft die Verwendung von IFindService.CreateFinderFactory, die hier verlinkt ist.
Aber ich habe keine Ahnung, wo ich eine Instanz von IFindService bekommen kann. Mein Einstiegspunkt in Visual Studio ist genau ein Objekt, ein DTE2. Wie bekomme ich mit einem DTE2 alles, was ich zum Bearbeiten von Text benötige?
Mobile version