代码之家  ›  专栏  ›  技术社区  ›  David Gardiner

在不覆盖现有代码的情况下完成重拾器

  •  8
  • David Gardiner  · 技术社区  · 14 年前

    <td>
        <%= Html.Encode(item.Address) %>
    </td>
    

    我将光标移到“item”之前并键入“String.F”,得到Resharper的intellisense完成列表,其中包含“Format”方法。

    然后用“.Format()”替换“item”

    有没有一种方法可以在不替换现有文本的情况下使用补全?

    5 回复  |  直到 14 年前
        1
  •  9
  •   Fenton    14 年前

    你可以使用两种技巧。

    第一种是使用回车键,第二种是在要开始键入的位置和下一位代码之间弹出一个空格,这样可以防止下一位代码被覆盖。

        2
  •  10
  •   David Gardiner    14 年前

    而不是 桌棋类游戏 从完成列表中选择。那正是我想要的。它围绕着(在这种情况下)'项目.地址“带着字符串格式( .. ).

        3
  •  4
  •   Patrick van Ek    7 年前

    现在有一个实际的设置来禁用这个(恼人的)行为。

    转到“选项”对话框(菜单->重新精简->选项)。

    在这里,您可以将选项卡行为设置为插入而不是替换。

    Screenshot of Options

    Resharper documentation about Completing Characters

        4
  •  1
  •   CyberDude    14 年前

    String.Format 环绕模板,但您可能需要将热键映射到该模板,以便于访问。

        5
  •  0
  •   Carl G    12 年前

    要使用的键盘命令称为: Resharper_ForceCompleteItem . 因此,如果进入VisualStudio的“工具”>“选项”>“环境”>“键盘”,您可以在那里指定一个键盘快捷键。不确定是否可以使用 标签 不过。