Die C# -Code-Snippets, die ich erstelle, können nur durch Drücken der Eingabetaste beendet werden, während die integrierten Snippets wie 'struct' durch Tabulatoren durch die benutzerdefinierten Felder vervollständigt werden können.Schreiben Sie C# -Snippets, die mit TAB enden
Es ist kein großes Problem, aber es ist ärgerlich. Ich habe versucht, den gesamten XML-Code für das Struct-Snippet in mein eigenes zu kopieren und dabei nur den Namen der Verknüpfung zu ersetzen. Trotzdem musste ich Enter drücken, um die Einfügung abzuschließen.
Irgendwelche Ideen, warum das so ist? Kann jemand anderes dieses Verhalten reproduzieren? Hier
ist das Snippet ich zu schreiben versuchen:
<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>cmd</Title>
<Shortcut>cmd</Shortcut>
<Description>Code snippet for ICommand</Description>
<Author>Andreas Larsen</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>name</ID>
<ToolTip>Command name</ToolTip>
<Default>My</Default>
</Literal>
</Declarations>
<Code Language="csharp"><![CDATA[public ICommand $name$Command
{
get
{
if (_$name$Command == null)
_$name$Command = new DelegateCommand($name$);
return _$name$Command;
}
}
$end$]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
Edit: Wie von Carl G, das Visual Studio Verhalten ist nur mit ENTER oder ESC zu beenden. Beenden mit TAB ist ein ReSharper Live Template-Verhalten.
Sie werden es wahrscheinlich einfacher finden, ein Tool wie http://snipper.codeplex.com/, http://snippetiditor.codeplex.com/, http://snippetitor.codeplex.com/ –
nicht zu verwenden Letztes, das ist VB –