c# - VS Intellisense 可以配置为运行“to-cursor”吗?
问题描述
我同时使用 Delphi 和 Visual Studio (C#),我注意到代码完成的工作方式有所不同,我觉得这很烦人。在 Delphi 中,如果您编辑现有代码以更改您正在使用的变量,代码完成将根据光标之前的代码给出提示。例如,将“I”插入 myString 以成为 myIString 将给出代码提示以显示以“myI”开头的任何可用变量。然后选择一个将用新的覆盖 myString。
在 Visual Studio 中,做同样的事情会打开一个代码完成菜单,其中包含所有可用变量,并且没有选择任何变量,因此您可以看到列表的顶部。在获得有意义的代码完成之前,您必须完全删除正在使用的变量并重新开始。
我似乎经常进行这样的更改(也许我应该首先把它做好!)所以删除代码有点烦人,并且在有很多部分的较长行上可能会更棘手。
这里有一些截图(希望)说明了差异。我正在努力如何最好地表达这个!
我已经尝试在 Visual Studio 中使用 Intellisense 设置,但似乎没有任何东西可以改变行为。有没有办法在 C# 中复制它?
解决方案
我已经尝试在 Visual Studio 中使用 Intellisense 设置,但似乎没有任何东西可以改变行为。有没有办法在 C# 中复制它?
目前,VS 不支持这种行为。当我们将字符插入现有变量时,自动完成将不起作用。当我们在空白处输入字符时,它就会生效。
在我看来,你的建议真的很有意义。我认为如果我们有一个新的选项来支持插入字符时的自动完成可能会更好,所以我建议你可以去=>帮助=>种子反馈=>提供一个建议来在那里发布你的想法。
如果您在此处分享链接,我们对它感兴趣的人将为您投票。
作为替代方式:
你可以去 Tools=>Options=>Text Editor=>C#=>Intellisense=>EnableShow Completion list after a character is deleted
选项。
然后你可以插入'i',语句可以是myiSring1.GetType();
并删除其中的任何或所有字符String1
,它会显示如下所示的智能感知:(例如:我删除'r'。)显然,这是你真正想要的,但作为我上面提到过,VS 本身暂时不支持这种行为,希望你可以使用“删除选项”节省一些时间。带来不便敬请谅解。
另外,您可以检查一下ReSharper是否可以满足您的需求,因为它是第三方工具,似乎在 xx 天试用后收费,我没有更多详细信息。
希望以上所有帮助:)
推荐阅读
- android - 如何通过 id 获取 Firebase 用户?
- python - foo=list、foo=[] 和 foo=list() 之间的区别?
- java - 如何使用 Java 编写余弦定理?
- intellij-idea - 我复制的项目出现在新项目旁边的括号中
- javascript - 更改图表的位置
- laravel - 让 Laravel “Hello World” 运行的最简单方法是什么?
- python-3.x - 如何获取小部件项的值以显示在 TextArea 中并将值转换为字典
- java - 错误:无法执行目标 org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy 405,
- python - 日期时间输出的差异
- svelte - 使用保留字作为道具名称