1

拡張機能を開発していますが、基本的に現在のウィンドウのテキストを置き換える必要があります。このようにReplacePatternを呼び出すことができます

 EnvDTE80.DTE2 app = GetActiveIDE();
 TextDocument txt = app.ActiveDocument.Object("TextDocument") as TextDocument;
 EditPoint ep = txt.CreateEditPoint(txt.StartPoint);
 txt.ReplacePattern(".*", string.Empty, (int)vsFindOptions.vsFindOptionsRegularExpression);
 ep.Insert("blah");

そしてそれは動作します。それに関する唯一の問題は、ユーザーが置換を元に戻そうとすると、テキストが単一の大きなチャンクとしてではなく、行ごとに戻ってくることです-したがって、より良い方法があるはずです...

4

1 に答える 1

1

ええと..これ:

EditPoint ep = txt.CreateEditPoint(txt.StartPoint);
ep.Delete(txt.EndPoint);
于 2012-02-04T19:03:10.323 に答える