Visual Studio Community是否可以按类别排序Intellisense建议?

4
我是一个Unity开发者,刚从Monodevelop转换到Visual Studio Community。总体而言,Visual Studio Community是一个巨大的改进,但有一件事情我觉得Monodevelop做得更好:使用Monodevelop的自动完成功能时,它总是按类别排序函数/变量。而VSC只会按字母顺序显示所有可能的结论,包括所有类和基类的方法和属性。
因此,在这个例子中,如果我在Monodevelop中键入“PauseManager。”,它将首先显示PauseManager的自动完成建议,然后再显示其基类System.Object的建议。

Monodevelop

然而,当我在Visual Studio中输入同样的内容时,它会按字母顺序显示给我一个巨大的方法和属性列表,其中大部分我可能不会使用。

Visual Studio

这是一个只有一个祖先的小类的非常简单的示例; 当我有一个有十几个公共方法和多个祖先的类时,你可以想象这会变得特别笨重,每个祖先都有自己的公共方法和属性。
我查看了这里的Intellisense文档: https://code.visualstudio.com/docs/editor/intellisense,但我没有看到任何可实现我想要完成的选项。
有人知道如何做到这一点吗?如果没有,我可能不得不不情愿地回到Monodevelop - 浏览所有这些方法以分离出与我正在做的相关的方法正在变成一个烦人的时间浪费。

我在你的两张截图中只看到了完全相同的5个建议...?只是顺序不同(通常最后使用的会排在前面,如果没有最后使用的,则按字母顺序排列)。你可以看看ReSharper,那里可以自定义很多东西,但实际上我更喜欢看到所有可用的选项..因为你永远不知道什么时候会需要它们。 - derHugo
没错@derHugo - 建议是一样的,但在Monodevelop中,它们按照类->基类->基类等顺序排序。在Visual Studio中,它们按字母顺序排序,而不考虑类别。当我的类有4个祖先,每个祖先都有十几个公共属性和方法时,这变得非常难以操作。我想知道是否有一种方法可以使它像在Monodevelop中那样工作。Intellisense看起来设计得很灵活,所以我希望这是可行的。 - SemperCallide
@SaraLiu-MSFT 我正在使用VS Community 2017 v7.7.4 (build 1)。Visual Studio Code与Unity解决方案不兼容,因此它实际上并不是一个选项。您是如何让那些图标出现在您的代码建议下面的?非常有兴趣看看是否可以成为解决方案。 - SemperCallide
1
@SemperCallide,请前往“工具-选项-文本编辑器-C#-智能感知”并勾选“显示完成项筛选器”选项,然后保存。该选项默认已勾选,您可以取消勾选并重新勾选以进行测试,或者前往“工具-导入和导出设置-重置所有设置”并备份当前设置,选择“常规”设置进行恢复。如果仍然无法解决问题,请前往“帮助-关于Microsoft Visual Studio”查看版本并分享。 - Sara Liu - MSFT
@SaraLiu-MSFT,我已经查看了版本名称,并提到了我正在使用的版本:VS Community 2017 v7.7.4(build 1)。您提供给我的网站是我下载它的同一个网站。请问您使用的是哪个版本? - SemperCallide
显示剩余4条评论
2个回答

5

很抱歉,目前似乎不可能实现。

之前有一个问题/功能请求,但他们在5个月前关闭了它,并回答说“不会做”。 虽然他们将其链接到一个“重复”的问题,但我并不真的认为那是一个重复的问题...

也许你可以搜索插件,但内置的似乎目前不可能实现...这很遗憾,因为现在我知道它存在于某个地方,我也有点想念它 :'D


这让我感到很失落。看来我暂时只能使用Monodevelop了。谢谢你提醒我。 - SemperCallide

-3

前往

工具 -> 获取工具和功能 -> 修改

如果您有多个版本,请选择适当的版本。

向下滚动并找到 Visual Studio 开发扩展。

选中复选框,然后点击修改。

这就是您需要做的全部内容。

享受✌️


在“工具”下面没有“获取工具和功能”的选项。可选项包括:“程序集浏览器”,“正则表达式工具包”,“仪器”和“添加自定义工具...”。 - SemperCallide
在开发扩展中勾选复选框如何影响智能感知并不清楚。 - Arturo Torres Sánchez

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接