Visual Studio: как показать перегрузки в IntelliSense?


252

После написания кода единственный способ, которым я знаю, для просмотра перегрузок метода, - это на самом деле редактировать метод, удаляя скобки ()и открывая их снова.

Есть ли клавиша быстрого доступа, которую я мог бы нажать, чтобы активировать ее вместо необходимости редактировать мои файлы?

Для примера, пожалуйста, обратитесь к скриншоту ShowDialog Overload ниже:

ShowDialog1 Перегрузки


6
Что случилось со старыми добрыми стрелками вверх и вниз?
Zapnologica

3
@Zapnologica: стрелки вверх и вниз все еще существуют, но поле IntelliSense необходимо активировать и открыть, прежде чем эти стрелки можно будет использовать для прокрутки вариантов перегрузки. Этот вопрос о том, как открыть окно IntelliSense .
jp2code

3
Как вы можете сделать его открытым по умолчанию, управляющее пространство или управляющее смещение
Zapnologica

6
@Zapnologica: я использую последовательность Control + Shift + Space , как в комбинации старого стиля Control + Alt + Delete .
jp2code

В VS2012 он открывался по умолчанию, когда я набирал открытые скобки после имени функции, но, похоже, он больше этого не делает, так как я установил ReSharper. Вместо этого он предоставляет выпадающее меню возможных переменных / функций для заполнения в первом аргументе. Довольно раздражает.
Nyerguds

Ответы:


395

Попробуйте комбинацию клавиш Ctrl- Shift- Space. Это соответствует Edit.ParameterInfo, если вы изменили значение по умолчанию.

Пример:

Описательный скриншот, по jp2code


41
По крайней мере в VS 2008 кажется, что ваш курсор должен быть в скобках, чтобы этот ярлык работал. Кроме того, спасибо за публикацию, я не знал, что это существовало!
Кисва

2
Теперь, если бы был только способ сделать это по умолчанию.
Майк Лоури

В VS2017 проклятый также должен быть в скобках.
Мухаммед Нурельдин

В vscode это тоже работает, и вы можете использовать Alt + Upили Alt + Downдля навигации между ними.
Хуан де ла Круз

60

Ctrl+ Shift+ Spaceпоказывает Edit.ParameterInfoвыбранный метод, и под выбранным методом я имею в виду, что каретка должна быть в скобках метода.

Вот плакат для привязки клавиш в Visual Studio 2010 .

И для тех, кто все еще использует 2008 .


3
Вау, теперь ты выглядишь намного сексуальнее, чем моя с твоими модными клавишными метками! Я не могу этого допустить!
aardvarkk

+1, и еще +1 для Нила, если он скажет мне, как это сделать здесь.
jp2code

11
Вы используете теги <kbd> </ kbd>
Нил Найт,

Для меня на VS2017 это кажется: Ctrl + Shift + пробел, пробел
андрей паштет

50

Проверено только на Visual Studio 2010.

Поместите курсор в (), нажмите Ctrl+ K, затем P.

Теперь навигации нажатия кнопки  ↑  /  ↓  клавиши со стрелками.


Возможно, я делаю что-то не так, но я не могу заставить это работать в VS2008 или VS2010.
jp2code

1
Это ярлык VS2010 (не уверен насчет 2008 года) - но, возможно, вы его изменили или инструмент, который вы установили, похитил ярлык.
Алекс В Париже

Это то, что я искал. Что-то похожее на Ctrl + Q в IntelliJIdea / Android Studio.
DaMachk

19

Связывание ключей по умолчанию для этого Ctrl+ Shift+ Space. Базовая Визуальная команда Студии Edit.ParameterInfo.

Если стандартное связывание клавиш не работает для вас (возможно в некоторых профилях), вы можете изменить его на странице настроек клавиатуры.

  • Сервис -> Параметры
  • клавиатура
  • Введите Edit.ParameterInfo
  • Изменить сочетание клавиш
  • Хит Назначить

1
Очень хорошо! Для еще +1, не могли бы вы сказать мне, как создать эту Ctrl+Shift+Spaceграфику?
jp2code

8
@ jp2code для создания графики используйте <kbd>теги. Пример<kbd>Shift</kbd>
JaredPar

3
@ jp2code, если вы открываете в режиме редактирования, вы также можете увидеть используемые теги.
Radbyx

В Visual Studio 2015, если это не работает для вас, обязательно попробуйте это: stackoverflow.com/a/31087682/68905 Мне пришлось сделать это, чтобы заставить его работать.
jakejgordon

10

Бывает, что ни один из вышеперечисленных методов не работает. Привязка клавиш правильная, но подсказка просто не отображается ни в одном случае, ни как помощь при завершении, ни по требованию.

Чтобы это исправить, просто зайдите в Инструменты \ Текстовый редактор \ C # (или все языки) и проверьте « Информация о параметрах ». Теперь должно работать


7

Большой вопрос; Я была такая же проблема. Оказывается, что для вызова этого списка действительно есть сочетание клавиш: Ctrl + Shift + Space (вариант базового сочетания клавиш IntelliSense с Ctrl + Space).


5
  • Команда Edit.ParameterInfo( по умолчанию сопоставленная с Ctrl+ Shift+ Space) покажет всплывающую подсказку, если она вызывается, когда курсор находится внутри скобок параметров вызова метода.

  • Команда Edit.QuickInfo( по умолчанию сопоставленная с Ctrl+ KCtrl+ I) покажет всплывающую подсказку, которую вы увидите, если навести курсор на местоположение курсора.


2

Время от времени предложения, приведенные выше, перестают работать, если я перезапускаю Visual Studio, они снова начинают работать.


1

Я знаю, что это старый пост, но для таких новичков, как я, которые все еще заходят на эту страницу, это может быть полезно. когда вы наводите указатель мыши на метод, вы получаете информационное окно, не реагирующее на клики, тогда как, если вы просто пишете запятую в скобках метода, IntelliSense предложит вам любимое информационное поле с кликабельными стрелками.


это не одно и то же. Это IntelliSense того, какие значения вы можете ввести. Не окно перегрузки. Для этого вы можете просто сделать Ctrl + Space
Mastro

0

Мой появился в VS2010 после написания первой скобки ..

так, коляски.Добавить (

После чего-то подобного появилась коробка со стрелками вверх и вниз.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.