【问题标题】:Insert a snippet from a Visual Studio macro从 Visual Studio 宏插入片段
【发布时间】:2009-09-04 21:51:17
【问题描述】:

我有一种情况,我想运行一个 Visual Studio 宏,让用户在 InputBox 中键入一些内容,然后插入一个 sn-p 并将该文本包含在其中的某处。不幸的是,我不知道如何从宏代码中插入 sn-p。好像是这样的

DTE.ExecuteCommand("Edit.InvokeSnippetFromShortcut")

DTE.ExecuteCommand("Edit.InvokeSnippetFromShortcut", "theSnippetName")

但那些不起作用。有什么想法吗?

【问题讨论】:

    标签: vb.net visual-studio macros code-snippets


    【解决方案1】:

    您可以使用以下代码插入一个 sn-p。

    DTE.ActiveDocument.Selection.Text = "snippetshortcut"
    DTE.ExecuteCommand("Edit.InsertTab")
    

    如果您使用的是 VS 2010,则需要调用 DTE.ExecuteCommand("Edit.InsertTab") 两次。

    【讨论】:

    • 天哪,你是对的。现在我看到它,我意识到我可能通过录制宏来发现它,如果我想到的话。谢谢! ...现在,如果我能记得我在 16 个月前在做什么,我想知道这一点。 :)
    • 我需要这个是为了插入一个 sn-p 但用计算值填充一些文字(如今天的日期)。
    【解决方案2】:

    您需要决定应在何处选择此代码。要在当前文本选择中插入文本,您需要使用以下代码:

    Dim textSelection As EnvDTE.TextSelection
    textSelection = DTE.ActiveWindow.Selection          
    textSelection.Insert(MyTextVarHere)
    

    【讨论】:

    • 我想插入一个 sn-p。不只是一些文字。 Snippet 在 Visual Studio 中有特定的含义。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    相关资源
    最近更新 更多