Любимые сочетания клавиш Visual Studio [закрыто]

336

Какое ваше любимое сочетание клавиш в Visual Studio? Я всегда готов оставить свои руки на клавиатуре и подальше от мыши!

Один за ответ, пожалуйста.

пели
источник
Те же вопросы были заданы здесь: stackoverflow.com/questions/20507/… и здесь: stackoverflow.com/questions/26452/visual-studio-2005-shortcuts
Pascal Paradis
Правильнее всего связать их, пометив их одинаково
Джефф Этвуд,
2
Я думаю, что это нагрузка. Я намного быстрее использую только клавиатуру, чем мышь. Я на самом деле ненавижу свою мышь. Отстой, что это необходимость.
Кайл Розендо
11
@DanM, все, что "Яблоко доказало", должно быть взято с зерном соли. Каким образом поиск и перемещение мыши на небольшом участке пикселей будет быстрее, чем запоминание комбинации клавиш? Серьезно, возьми свою руку и вернись на клавиатуру;)
Ash
2
@DanM, это не сценарий «все или ничего». Использование клавиш курсора для перемещения в произвольные позиции в документе глупо, используйте мышь. Но по мере того, как вы становитесь более опытным в использовании ярлыков, для большинства других вещей клавиши становятся быстрее. С мышью вам также приходится иметь дело с координацией рук и глаз, а это может быть очень неудобно. Предложение: Старайтесь больше использовать ключи в течение месяца или около того. Вы можете начать с трудностей, но ваша производительность значительно улучшится, если вы будете придерживаться этого. Но придерживаться этого является ключом.
ясень

Ответы:

227

Ctrl+ -и наоборот Ctrl+ Shift+- .

Переместите курсор назад (или вперед) к последнему месту, где оно было. Нет больше прокрутки назад или PgUp/, PgDownчтобы узнать, где вы были.

Это переключает открытые окна в Visual Studio:

Ctrl+ tabи наоборот Ctrl+ Shift+tab

Glennular
источник
18
Я искал это всегда. Раньше я просто использовал Ctrl + Z Ctrl + Y.
Пол Александр
4
Ctrl-Tab немного забавен в VS по некоторым причинам - он не просто цикличен, как большинство приложений.
Лукас Джонс
6
@ Лукас Джонс, Кажется, что циклично, как Alt-Tab в Windows. Кажется нормальным для меня.
devuxer
4
Нажатие Ctrl + Tab один раз переключает между текущим документом и предыдущим документом, вам даже не нужно смотреть на всплывающее окно.
Пеп
3
Я часто отменяю циклическое переключение между окнами приложения (Alt + Tab), нажимая клавишу Esc. Однако при циклическом перемещении по окнам документов (Ctrl + Tab) открывается меню «Пуск» Windows. Это просто сводит меня с ума.
2010 года
130

Для меня нет ничего общего с автоматическим завершением кода, соответствием скобок или показом какой-нибудь необычной панели инструментов. Вместо этого, это просто позволить мне увидеть код.

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

В этом случае Shift+ Alt+ Enterприходит на помощь и фокусирует окно кода в полноэкранном режиме. Хит снова, и у вас есть все панели обратно.

Peter Mortensen
источник
Я всегда использую Alt + V, U для одного и того же эффекта :) Но да, полноэкранный режим рулит.
Корона
17
БОЛЬШИЕ мониторы тоже работают =)
Звуковой сигнал
Согласовано! Я использую это все время. VS10 будет иметь плавающие панели, которые несколько помогут.
Пол
Помогает также отключение всех дополнительных окон в режиме редактирования.
Кевин Киблер
124

Инкрементальный поиск - Ctrl+I

Это в основном диалоговое окно поиска без диалогового окна. Просто начните вводить то, что вы хотите найти (посмотрите на нижнюю строку строки состояния, чтобы увидеть, что вы ввели). прессованиеCtrl + Iили F3поиск следующего экземпляра. Нажмите Escape, чтобы выйти. Запуск нового поиска нажатием Ctrl+ Iдважды повторяет последний поиск.

Dara Kong
источник
Кроме того, он находит первый экземпляр при вводе. Ctrl-i после того, как вы нажмете совпадение, ищет следующий экземпляр - и удерживает вас в режиме поиска (что означает, что вы можете добавлять или изменять строку поиска). Окно поиска для лохов!
Aardvark
9
Одно замечание с этим, что я видел (в VS 2005 в любом случае), он ищет только видимый текст. Так что, если у вас рухнул какой-то регион, например, он не будет искать его. Я не знаю, если это особенность или ошибка!
Адам Нил
1
Похоже, функция поиска Emacs.
dicroce
2
@CodeSavvyGeek: это исправлено в VS2010.
TheCloudlessSky
1
На самом деле, это теперь в 2012 году вид слился с поиском (Ctrl + F) в одну функцию
Марко
98

Развернуть смарт-тег (меню «Разрешить»): Ctrl+. (точка)

Расширяет тег, который показывает, когда вы делаете такие вещи, как переименование идентификатора.

Рэй
источник
Лучший ярлык. Используйте, когда вы видите волнистое "~", под некоторым кодом. :)
Chad Moran
1
Это мое любимое и только одно я могу вспомнить. Alt-Enter аналогичен, если у вас установлен resharper.
Даниэль
6
Также Shift-Alt-F10 связан с этим, но, вероятно, сложнее
Рубен Бартелинк
Хороший ярлык, но на самом деле он вызывает меню «Разрешить» (так что вы можете добавить usingоператор или полностью определенное пространство имен для класса) ... оно не имеет ничего общего с подсказками.
Devuxer
DanThMan, вы правы, всплывающая подсказка не является правильной терминологией, будет обновляться
Ray
95

Ctrl+ K, Ctrl+ CКомментировать блок

Ctrl+ K, Ctrl+ UРаскомментировать блок

user18443
источник
Ctrl K, D форматирует весь документ (правильные отступы, очищенные и т. Д.) В моем. ?
Джон Дунаган
Я обычно настраиваю отображение, чтобы оно было CTRL + / (комментарий) и CTRL + SHIFT + / (раскомментирование). Я нахожу это хорошим и интуитивно понятным.
el2iot2
8
Ctrl-E, C и Ctrl-E, U также работает. Вам не нужно отпускать Ctrl после первой клавиши.
Geofftnz
2
Я использую CTRL + / withy Resharper.Resharper_LineComment, который с одним ярлыком включает и выключает комментарии к строке.
Myster
Я использую это часто, поэтому мне нравится настраивать это так, чтобы что-то легкое на пальцах: Alt- [для комментария, и Alt-] для комментария.
Джаред Тирск
77

Stock Visual Studio? F12- Edit.GoToDefinition .

Наличие DevExpress 'Refactor! Установленный означает, что Ctrl+ `мой самый любимый, хотя;)

moobaa
источник
-1, предпочтение stackoverflow.com/questions/98606/… (Но второй CodeRush, хотя я привязываю его к Num 0)
Рубен Бартелинк
люблю это, и это хорошо сочетается с [Control] + [-]
Digital Powers
71

TABКлюч для «фрагментов».

Например, введите, tryа затем дважды нажмите клавишу табуляции.

Результаты в:

try 
{           

}
catch (Exception)
{

    throw;
}

который вы можете затем расширить.

Полный список фрагментов C #: http://msdn.microsoft.com/en-us/library/vstudio/z41h7fat.aspx

nzpcmad
источник
2
Фантастика - знал о сниппетах, но не то, чтобы ты мог добраться до них так быстро!
Xan
61

Ctrl+ ]для сопоставления скобок и скобок.

Ctrl+ Shift+ ]выбирает код в соответствующих скобках.

Mark Cidade
источник
1
К сожалению, в отличие от большинства других сочетаний клавиш, этот язык не зависит от языка. Например, на датской клавиатуре это CTRL + Å. Для всех
остальных
вау, этот отлично подходит для просмотра длинных строк кода, написанного кем-то другим
ClearCloud8
60

Ctrl+ Shift+F

Старый добрый Найти в файлах .

прощены3
источник
51

Ctrl+ SpaceVisual Studio дает возможные дополнения.

Sirish
источник
47

Ctrl+ K, Ctrl + D// Авто- (Пере) Формат

Смотрите также: Ответ

Nescio
источник
Особенно полезно для грязных файлов XML.
Дамиан Пауэлл
на мой VS, это CTRL + K, CTRL + Y :)
Элейн
и для меня это CTRL + K, CTRL + F
Даниэль Бонетти
43

Ctrl+ C, Ctrl+ Vдля дублирования текущей строки

Ctrl+ Lдля удаления текущей строки

Ctrl+ F3для поиска текущего выбора

Ctrl+ K, Ctrl+ Kдля создания закладки (которые полезны)

Ctrl+ K, Ctrl+N для перехода к следующей закладке

И еще кое-что интересное:
нажмите Ctrl+, /чтобы поместить курсор в поле, в котором вы можете вводить команды.

Например, нажав « Ctrl/и введите «> of», теперь начните вводить имя файла в вашем проекте, и он будет автоматически заполнен. Это очень быстрый способ открытия файлов в текущем решении.

jmnben
источник
11
Control-L обрезает текущую строку. Control-Shift-L удаляет его.
Грег
2
@ Грег: Класс, спасибо. @Others: Это отличные, но не в состоянии придерживаться одного спрашивающего в строке спрашивать: - -1 :(
Рубен Бартелинк
Также дуп из stackoverflow.com/questions/98606/…
Рубен Бартелинк
Ctrl + D также дублирует текущую строку (и намного короче)
Ray
1
@Ray: Ctrl + D не работает для меня. Это с ярлыками по умолчанию Visual Studio? Это может быть ярлык ReSharper IIRC?
dariom
40

Ctrl+ Shift+ Vвставить / перебрать кольцо буфера обмена

Клин
источник
Я всегда находил эту функцию слишком медленной, чтобы быть полезной. Хотелось бы, чтобы они улучшили его производительность - иногда загрузка элементов в буфер обмена занимает до 20 секунд.
CBP
Используйте clipx, если вы хотите сделать историю буфера обмена. Это охватывает все приложения. bluemars.org/clipx
Тим Кокер
в 2012 работает отлично! чем ты :)
Марко
Вау, это круто. Это хороший помощник для всех тех времен, когда я думал, что «потерял» содержимое моего предыдущего буфера обмена, оно все еще было там все время. Спасибо!
ClearCloud8
34

Мне нравится Ctrl+ M, Ctrl+ M. Развернуть / свернуть текущий блок кода.

Адам Нил
источник
2
Похоже, Ctrl + M + M работает также. Так что вам не нужно отпускать кнопку ctrl после первого m.
ClearCloud8
Каждый из ярлыков доступен для редактирования, и по умолчанию часто используется версия с ctrl два раза или с первого раза.
Preza8
34

То, что я использую часто, но не так много других людей, это:

Shift+ Alt+ F10тогдаEnter

Если вы введете имя класса, как Collection<string> и не имеете надлежащего импорта пространства имен, тогда эта комбинация клавиш автоматически вставит импорт (в то время как символ «сразу» после «>»).

Обновить:

Эквивалентный ярлык из комментариев к этому ответу (спасибо, звездочка !):

Ctrl + .

Намного удобнее, чем моя первоначальная рекомендация.

Eric Schoonover
источник
Это для View.SHowSmartTag, поэтому любой отображаемый смарт-тег будет иметь открытое меню (например, интерфейс реализации). Я изменяю это отображение на Alt + Стрелка вниз.
Марк Сидаде
Я стараюсь нажимать кнопку Windows -> вниз -> вправо -> ввод, что для меня быстрее, чем странное перемещение моих рук, чтобы нажать Shift + Alt + F10 + Enter.
Рахул
12
Вы можете сделать Ctrl + "." для той же цели, и это намного, намного удобнее.
астерит
Да, вы можете сделать Ctrl + ".", Но оригинальные Shift + Alt + F10 также будут работать в других приложениях MS, таких как Outlook, PowerPoint, Excel и Word.
Дирк Воллмар
-1 как дубликат одного выше (даже если это было первым, а не surte, если это было)
Рубен Бартелинк
34

Shift+ESC

Это скрывает / закрывает любое из окон 'поддельного окна' в Visual Studio. Это включает в себя такие вещи, как обозреватель решений, обозреватель объектов, окно вывода, окно немедленного просмотра, окна модульного тестирования и т. Д. И т. Д. И по-прежнему применяется, независимо от того, закреплены они, находятся в плавающем режиме, закрепляются или вкладываются.

Ярлык в окне (например, Ctrl+ Alt+ Lили Ctrl+ Alt+ I) делает то, что вам нужно сделать, и Shift+, Escчтобы избавиться от него. Если вы не избавитесь от этого, единственный способ снова сфокусировать его - это использовать тот же ярлык на клавиатуре (или мышь, чего мы и стараемся избегать ....)

Как только вы это освоите, это будет очень полезно.


Grrr .... Количество нажатий Ctrl+, F4чтобы закрыть «окно» только для того, чтобы увидеть, что мое текущее закрытие окна кода было безумным, прежде чем я нашел это, теперь это происходит только изредка ..

Гордон Хартли
источник
Это круто!!! (shift + esc) Я всегда строю, окно вывода вылетает и курсор мыши зависает, что препятствует автоматическому скрытию. Это заставляет меня убрать руки с клавиатуры, что я ненавижу. Но благодаря этому вы решили мою самую большую досаду с визуальной студией. СПАСИБО СПАСИБО СПАСИБО.
Тим Кокер
1
«Если вы не избавитесь от этого, единственный способ снова сфокусировать его - это использовать ту же самую комбинацию клавиш» - Alt + F6 циклически перебирает открытые окна инструментов, нажимая быстрее, чем Ctrl-W-stuff
user472875
На MSVC 6.0 (или что-то еще более старое?) [ESC] скрывал (фактически переключая IIRC) окно вывода. Я долго искал замену этому, спасибо!
Вальмонд,
VS 2012 использует Ctrl + Shift + [вместо Ctrl + Alt + L - который перемещается к текущему файлу вместо перехода к последнему выбранному файлу в обозревателе решений.
yzorg
24

Мой любимый: F12(перейти к определению) и Shift+ F12(найти ссылки).

Последнее полезно с F8(перейти к следующему результату).

Ctrl+ -и Ctrl+ Shift+ -отображаются на кнопки мыши назад и вперед.

Ctrl+ также .полезен, особенно для добавления обработчиков событий и операторов «using».

fatcat1111
источник
Я использую <ключ меню>, <g> для перехода к определению. Его гораздо проще достать, чем F12. <ключ меню>, <a> также найдет все ссылки. В большинстве случаев, когда я просматриваю код, моя левая рука находится на клавиатуре, а правая рука - на мыши, что означает, что я могу щелкнуть правой кнопкой мыши и нажать <g> или <a> для них, что довольно быстро ,
Тим Кокер
24

Плакаты для привязки клавиш Visual Studio 2005/2008:

Они не охватывают настройки, но являются хорошими справочными материалами и определенно полезны для поиска новых ярлыков.

Кроме того, макрос, который сбрасывает все текущие привязки в файл HTML:

http://www.codinghorror.com/blog/archives/000315.html

Jeff Atwood
источник
2
VS 2010: microsoft.com/downloads/en/…
RandomEngy
22

Alt+ Shift+ Клавиши со стрелками ( , , , )

Это позволяет вам выбирать вещи в блоке. Как вы могли бы выбрать все «int» в блоке, а затем искать и заменять, например, на удвоение.

**int** x = 1;
**int** y = 2;
**int** z = 3;
Кит Элдер
источник
Эй, я уверен, что это действительно CTRL, а не ALT во всех приведенных выше примерах ...
JTech
19

Ctrl+ M, O. Можно свернуть и развернуть все разделы кода в определенном файле.

Рассел Майерс
источник
Ссылка VS O8 была удалена с сайта назначения. Это говорит, из-за возможного нарушения авторских прав.
Джон Дунаган
Это не Ctrl + M, 0, а Ctrl + M, O (<- не ноль, а O)
dance2die
Если вы хотите расширить снова, используйте CTRL + M, P
n00b
19

Откройте и установите фокус в обозревателе решений : Ctrl+ Alt+L

Peter Mortensen
источник
Я обычно нажимаю «Esc», чтобы вернуться.
Разработчик SaaS
Кроме того, для пользователей ReSharper Alt + Shift + L фокусируется на текущем файле в обозревателе решений.
Дмитрий Шевченко
18

Один , что другие редакторы должны взять: Ctrl+ Cс ничего не выбрано скопирует текущую строку.

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

Дублировать строку просто: Удерживая Ctrl, нажмите c, затем v. ( Ctrl+ C, Ctrl+ V)

Jerph
источник
2
Это также может раздражать, если вы по ошибке нажмете Ctrl + C вместо Ctrl + V
shoosh
А CodeRush добавляет еще больше w / Ctrl W и автоматические вещи на Ctrl-C ....
Рубен Бартелинк
17

CTRL+ F5(Начать без отладки)

CTRL+ SHIFT+ B(Построить решение)

Джорджио Галанте
источник
6
F7 - это «решение для сборки» для меня.
Корона
Как построить не все, а выбранное решение ??
Нарек
14

Вот список, который я часто использую:

Ctrl+ I: для прогрессивного поиска. Если после этого вы ничего не наберете Iи продолжаете нажимать I(удерживая Ctrlклавишу), он будет искать последний найденный элемент. Ctrl+ Shift+ Iобратный поиск. Вы также можете использовать F3Shift+F3 ) после ввода какой-либо строки поиска.

Ctrl+ K Ctrl+ C: Для комментирования выделенного региона. Если ничего не выделено, текущая строка будет прокомментирована. Естественно, вы можете просто держать Ctrlи нажимать K,C последовательно.

Ctrl+ K Ctrl+ U: Для раскомментирования выделенного региона. Работает как выше.

Ctrl+ /: Переместит курсор на маленькое окно поиска сверху. Вы можете ввести «> имени файла» (без кавычек), чтобы открыть файл. Очень полезно, если ваш проект содержит несколько файлов.

Ctrl+ K Ctrl+ K: Добавит в закладки текущую строку. Это полезно, если вы хотите на мгновение взглянуть на какую-то другую часть кода и вернуться туда, где вы были.

Ctrl+ K Ctrl+ N: Приведет вас к следующей закладке, если их несколько.

Ctrl+ -: Переместит курсор на прежнее место

Ctrl+ Shift+ -: Переместит курсор на следующее место (если оно существует)

Ctrl+ Shift+ B: Построить свой проект

Ctrl+ C: Хотя это и делает обычную копию, если ничего не выделено, она копирует текущую строку. То же самое для Ctrl+X (для резки)

Ctrl+ Space: Автозаполнение с использованием IntelliSense

Ctrl+ ]: Приведет вас к соответствующей скобке. Работает со всеми видами скобок: '(', '{', '['. Полезно для больших блоков.

F12: Приведет вас к определению функции / определения переменной.

Alt+ P+ P: Откроет свойства проекта. Хотя не многие используют это, это полезно, если вы хотите быстро изменить аргументы командной строки для вашей программы.

F5: Начать отладку

Shift + F5 : Прекратить отладку

Во время отладки вы можете использовать Ctrl+ Alt+, Qчтобы добавить быстрые часы. Другие ярлыки отладки можно найти в раскрывающемся меню отладки.

Ashwin
источник
13

Ctrl+ F10

бегать к курсору при отладке. Искал это целую вечность, прежде чем я нашел сочетание клавиш ...

пели
источник
12

Если «Фаворит» измеряется тем, как часто я его использую, то:

F10 : Debug.StepOver

:)

Скотт Фергюсон
источник
12

По использованию, пара:

  • Ctrl+ Enter: вставить пустую строку над текущей строкой.
  • Ctrl+ Shift+ Enter: вставить пустую строку ниже текущей строки.
оборота 280Z28
источник
CTRL + ENTER вставляет над текущей строкой на моем VS2008.
Пепел
Ой, у меня были они задом наперед. : o Я даже не думаю об этом больше. :)
Сэм Харвелл
Это просто, но очень полезно. Это может сэкономить много нажатий клавиш, спасибо.
CMinus
12

Когда отображается раскрывающийся список IntelliSense , удерживание в нажатом положении Ctrlпревращает список в полупрозрачный, чтобы вы могли видеть, что скрыто за ним :)

Peter Mortensen
источник
Если бы я знал это раньше, я бы сэкономил столько времени и больше использовал бы клавишу Esc :)
munnster79
11

Ctrl+ Alt+ P -> Присоединить к процессу

Крис Балланс
источник
11

Не видел этого ...

Ctrl + Up

Ctrl + Down

Прокручивает окно без перемещения курсора.

Тим Кокер
источник
Это зависит. В Visual Basic 2005 Express Edition (это версия Visual Studio 2005 - 8.0.50727.42 (окончательная первоначальная версия 050727-4200)), вместо этого он переходит к предыдущей / следующей подпрограмме ( Sub или Function ). Это все еще полезно, хотя.
Питер Мортенсен