如何重置Visual Studio编辑器Iwpfview

时间:2016-11-02 14:02:19

标签: c# wpf visual-studio-2015 visual-studio-extensions visual-studio-sdk

[ContentType("Code")]
[Export(typeof(IWpfTextViewCreationListener))]
[TextViewRole(PredefinedTextViewRoles.Editable)]
internal sealed class TextViewCreationListener : IWpfTextViewCreationListener
{
    public void TextViewCreated(IWpfTextView textView)
    {
         ClassTemplateWriter.initializeFromParent(textView);
    }
}



public static void initializeMembers(string className)
{
     ClassTemplateWriterMembers.className = className;
     ClassTemplateWriterMembers.resetSnapshotLength();
     ClassTemplateWriterMembers.edit = ClassTemplateWriterMembers.view.TextBuffer.CreateEdit();
}

我正在尝试使Visual Studio Extension在活动文档的编辑器(或缓冲区)中添加代码。 到目前为止一切都很好,除了,

我选择file1并运行命令,选择file2并在那里运行命令。 现在,如果我选择上一个文件并运行命令,则代码将添加到file1而不是file2。

问题是在使用TextViewCreate创建file1和file2的视图之后, 如果我想用活动文档的视图重置'edit',(使用'initializeMembers'上面的函数) ClassTemplateWriter的视图成员不是活动文档的视图,而是最后创建的视图。

如何使用活动文档的视图重置成员视图?

(通过活动文档我的意思是我正在运行命令的文件。这是dte.ActiveDocument)

0 个答案:

没有答案