微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 代码段快捷方式无处不在

我有一个代码片段string.Format(@“”),带有一个快捷方式sf,用于插入片段并将光标放在两个双引号之间.真的很方便.我当然可以正常使用它,只需输入两次sf并点击标签

但是,我刚刚发现快捷方式在所有位置都不起作用.例如,如果我正在构建此语句:

if(true) throw new FormatException() // <-- cursor is inside these parens

并且我点击了sf,快捷方式没有出现在intellisense菜单中,如果我点击Tab两次,它就不会生成片段.为什么?

我试过搜索“C#代码片段快捷方式有时不起作用”,“C#代码片段快捷方式不起作用”,“视觉工作室代码片段有时不起作用”等等,我找不到任何有用的东西关于它.

编辑:这是片段定义:

<?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>String.Format with @</Title>
      <Author>Rory</Author>
      <Description>
      </Description>
      <HelpUrl>
      </HelpUrl>
      <Shortcut>sf</Shortcut>
    </Header>
    <Snippet>
      <Declarations>
        <Literal Editable="true">
          <ID>anchor</ID>
          <ToolTip>
          </ToolTip>
          <Default>
          </Default>
          <Function>
          </Function>
        </Literal>
      </Declarations>
      <Code Language="csharp" Delimiter="$" Kind="method body"><![CDATA[string.Format(@"$selected$$end$")]]></Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

解决方法

根据 docs,Kind属性决定了你可以使用片段的位置 – 你已经指定了“方法体”,你应该指定“任何”

原文地址:https://www.jb51.cc/csharp/99939.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐