将片段插入 Visual Studio 2017 时如何编辑文字

How do you edit the literals when inserting a snippet into Visual Studio 2017

当我在源代码中插入一个片段时,文字立即被空字符串替换,并且没有提示为它们输入值。您如何插入片段以提示输入文字?例如这里有一个小片段:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
      <Title>Test</Title>
      <Author>RM</Author>
      <Description>New Transaction</Description>
      <HelpUrl>
      </HelpUrl>
      <Shortcut>test</Shortcut>
    </Header>
    <Snippet>
      <Declarations>
        <Literal Editable="true">
          <ID>test</ID>
          <ToolTip>tool tip</ToolTip>
          <Default>Test
          </Default>
          <Function></Function>
        </Literal>
      </Declarations>
      <Code Language="csharp" Delimiter="$"><![CDATA[$test$

$test$

$test$$end$]]></Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

更新:我已经按照建议通过添加默认值和 $end$ 更新了脚本,但这仍然无法正常工作。如果我插入代码片段(使用 Ctrl-K、X),则会插入默认值。当我更改其中一个值时,只有一个值在变化,而其他值没有变化。

您需要设置

<Default></Default>

对某事。这是给片段一些突出显示以供编辑所必需的。 您还应该添加

$end$

在代码部分的末尾。

要更新文本,只需输入新文本并按回车键,所有三个变量都会更新。

尝试:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
      <Title>Test</Title>
      <Author>RM</Author>
      <Description>New Transaction</Description>
      <HelpUrl>
      </HelpUrl>
      <Shortcut>test123</Shortcut>
    </Header>
    <Snippet>
      <Declarations>
        <Literal Editable="true">
          <ID>test</ID>
          <ToolTip>tool tip</ToolTip>
          <Default>test</Default>
          <Function></Function>
        </Literal>
      </Declarations>
      <Code Language="csharp" Delimiter="$"><![CDATA[$test$

$test$

$test$$end$]]></Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>