Resharper - 禁用'帮助'当使用" prop" C#中的快捷方式

时间:2015-10-08 08:51:28

标签: c# autocomplete resharper visual-studio-2015 resharper-9.2

我对Resharper的一个功能非常恼火,我找不到如何独立禁用。

关闭Resharper后,每当我在VS2015中输入prop并按TAB时,我都会收到以下自动生成的代码:

public int MyProperty { get; set; }

然后我再次按int可以反复切换MyPropertyTAB。 我也可以使用自动填充功能填写变量类型。

例如,假设我想创建一个名为" test"类型"字符串",我会执行以下操作:

  1. 输入prop
  2. TAB生成属性代码模板
  3. 输入stri
  4. TAB以使用string
  5. 自动填充变量类型
  6. TAB移至变量名称占位符
  7. 输入test
  8. Return完成
  9. 完美。

    然而,在启用Resharper的情况下,虽然步骤1,2和3仍然有效,但在此之后一切都进入了底池!

    如果按TAB尝试自动填充变量类型,光标只会移动到变量名称,变量类型为stri

    如果我再次按TAB(或甚至SHIFT+TAB)尝试重新开始,则只需完成该行。

    为了让事情变得更清楚,我提供了两个GIF来证明我的问题。

    第一个显示Resharper禁用时会发生什么: enter image description here

    虽然这个说明了我目前在使用Resharper时遇到的挫败感: enter image description here

3 个答案:

答案 0 :(得分:4)

我知道这是一个古老的(呃)问题并且已经有了答案;但是,我想为未来的SO读者提供一个解决方案,允许人们继续使用Visual Studio的IntelliSense而不是Resharper。

我遇到与OP(原始海报)相同的问题,发现该问题是由与Resharper的实时模板发生冲突引起的。启用Resharper后,prop之后Tab + Tab的分辨率将解析Resharper的prop实时模板,而不是Visual Studio的prop代码段。您可能已经注意到,在OP的第二个屏幕截图(启用了Resharper的屏幕截图)中,prop的分辨率的数据类型显示为TYPE而不是int。这是因为Resharper的实时模板已将此参数名称设置为TYPE,而Visual Studio的代码段默认情况下将参数设置为int。这就是让我看看Resharper的实时模板的解决方案;并且看到关闭prop实时模板修复了这个问题。

转到Resharper的模板资源管理器(Resharper -> Tools -> Templates Explorer),您会看到有一个名为prop的实时模板。只需清除prop实时模板和Visual Studio的prop代码段解析的复选框,此类数据类型解析将重新开始工作。

enter image description here

enter image description here

答案 1 :(得分:2)

看起来你有智能感知设置冲突。 重新启用Resharper,然后更改此设置:

Resharper->Options->IntelliSense->General

将选择从“Visual Studio”更改为“Resharper”,点击“保存”,所需的行为应该是你的。

enter image description here

答案 2 :(得分:0)

我发现这些快捷方式在不禁用任何功能的情况下仍然可以工作,但是有时此功能会停止工作。

当前使用R#2018.2并将默认键盘映射设置为IntelliJ IDEA方案(因为我也使用Java),并且所有快捷方式都可用,但是当它们停止工作时,关闭所有选项卡并重新打开该选项卡,您正在正常修复它。

无需重启或重置。