VS 2012: прокрутить обозреватель решений до текущего файла

431

В VS2010 была функция, при которой просмотр файла автоматически приводил к тому, что Solution Explorer переходил к этому файлу.

В VS2012 просмотр различных файлов в среде IDE больше не прокручивается и автоматически выбирается в обозревателе решений.

Возможно ли вернуть эту функцию обратно? Где-то есть настройка? Если да, то как и где?

Сара Вайнбергер
источник
1
См. Также stackoverflow.com/questions/3436222/…
dyesdyes
1
используйте расширение «Найти в обозревателе решений» ( visualstudiogallery.msdn.microsoft.com/… ), которое добавляет команду меню «Найти в обозревателе решений» в контекстное меню вкладок открытого документа.
С.Серпушан
Если у вас есть ReSharper, я отправил решение в контекстном меню здесь
Шое

Ответы:

749

Да, вы можете найти это под

Сервис -> Параметры -> Проекты и решения -> Отслеживание активного элемента в обозревателе решений

По умолчанию он отключен (как вы заметили), но после включения Solution Explorer развернет папки и выделит текущий документ при переключении между файлами.

Крис Боуэн - MSFT
источник
25
Хотя я это проверил, в большинстве случаев это не работает. Я думаю, что это глючит в VS 2012. Когда обозреватель решений находится в режиме «Auto Hide» (или не закреплен), он теряет позицию активного файла и перемещает верхнюю часть! Это действительно отвратительно :(
Махмуд Моравей
7
Upvoted! Это по умолчанию в 2010 году, и я ненавижу это! К счастью, вы можете отключить его, используя метод, описанный выше в 2010 году. Спасибо!
jedd.ahyoung
2
@MahmoudMoravej, об этом сообщается об ошибке connect.microsoft.com/VisualStudio/feedback/details/777003/…
Trident D'Gao
2
Добро пожаловать на сайт Visual Studio, где сообщается об ошибках, а затем они никогда не исправляются! Серьезно, сегодня я вижу эту ошибку, о которой было сообщено 2 года назад.
jcollum
5
Если бы Visual Studio был идеальным, то кто бы купил Resharper?
Везенков
272

Если вам нужна одноразовая синхронизация с панелью решения, то есть новая команда «Синхронизация с активным документом» (по умолчанию ярлык: Ctrl+ [, S). Объясняется здесь: новые возможности Visual Studio 2012: обозреватель решений

Алекс Блехман
источник
1
Это также работает в Visual Studio 2013. Даже в редакциях Express.
Дункан Авербак
1
Это должно быть доступно как опция в контекстном меню!
Вишал Шах
4
Из другого ответа в этой теме я узнал, что в верхней части проводника решений также есть значок, который будет «синхронизироваться с активным документом». Не уверен, что это было введено в 2012 или 2013 году, но это работает в 2013 году.
arichards
1
В VS2012 (не тестировался в 2013, 2015) можно использовать либо «Отслеживать активные ...», либо ярлык / значок. И то, и другое невозможно. Вы получите сообщение Комбинация клавиш связана с командой (SolutionExplorer.SyncWithActiveDocument), которая в данный момент недоступна.
IvanH
3
Я использую VS2015 + ReSharper на Win10, и это единственный способ, который работает сейчас. Если вы хотите использовать другой ярлык, найдите «SolutionExplorer.SyncWithActiveDocument» в параметрах клавиатуры.
Скоттри
106

Если у вас установлен ReSharper, нажмите Shift+ Alt+, Lчтобы переместить фокус на текущий файл в обозревателе решений.

Активное отслеживание предметов также необходимо включить, как описано в принятом ответе.

Инструменты-> Параметры-> Проекты и решения-> Отслеживание активного элемента в обозревателе решений

Роб Уиллис
источник
19
@Joe: Сара не упомянула, использует ли она ReSharper или нет, поэтому я бы не согласился
Эдуард Думитру
1
это должен быть правильный ответ. гораздо более практичный и общий.
бункер
10
Это не правильный ответ, если вы не используете resharper.
Дон Роллинг
10
@RicardoParro: как оно может быть более общим, если оно зависит от дорогого стороннего дополнения?
Ник Кокс
2
Вопрос был о Visual Studio. Люди, которые используют Resharper, в основном живут в совершенно другом мире, поэтому этот ответ не отвечает на вопрос.
Доминик Кронин
39

Есть много способов сделать это:

Перейти к текущему файлу один раз:

  • Visual Studio 2013

    VS 13 имеет собственный ярлык для этого: Ctrl+ \, S(Нажмите Ctrl+ \, отпустите обе клавиши, нажмитеS клавишу)

    Вы можете изменить этот ярлык по умолчанию, если вы ищете SolutionExplorer.SyncWithActiveDocumentв Keyboard Settings(Инструменты-> Параметры-> Среда-> Клавиатура)

    Кроме того, в обозревателе решений также есть новый значок, подробнее об этом здесь .

    Синхронизация с кнопкой активного документа в VS2013 - Обозреватель решений

  • Visual Studio 2012

    Если вы используете VS 2012, есть отличный плагин для добавления этой новой функциональности с VS2013 на VS2012:. Ярлык по умолчанию strg+ alt+ ü. Я думаю, что это лучший, поскольку переход к обозревателю решений сопоставлен с strg + ü.

  • Resharper

    Если вы используете Resharper попробовать Shift+ Alt+L

    Это хорошее отображение, так как вы можете использовать Strg+ Alt+ Lдля перехода к обозревателю решений.

Отслеживать текущий файл все время:

  • Visual Studio> = 2012 :

    Если вы хотите постоянно отслеживать текущий файл в обозревателе решений, вы можете использовать решение из принятого ответа (Инструменты-> Параметры-> Проекты и решения-> Отслеживать активный элемент в обозревателе решений), но я думаю, что это может очень раздражает в больших проектах.

Дэвид Лейтнер
источник
3
Для не-немцев читают этот ответ, заменить Strg с Ctrl& üс ;для решения VS2012.
Кайл Канос
Я считаю этот ответ лучшим, (за исключением использования steuern вместо управления и других неанглийских сочетаний клавиш)
Мохаммед Нурельдин
На Visual Studio 2017 использую: Ctrl + `, S:)
Игорь
28

Если у вас не установлен ReSharper и вы все еще хотите использовать сочетание клавиш Shift+ Alt+ Lдля перемещения фокуса на текущий файл в обозревателе решений в Visual Studio 2013, выполните следующие действия.

  1. Перейдите в Сервис-> Параметры и найдите «Клавиатура» в текстовом поле Параметры поиска:

введите описание изображения здесь

  1. В командах Show, содержащих поле, введите «solutionexplorer» и затем в приведенном ниже списке найдите команду SyncWithActiveDocument: введите описание изображения здесь

  2. Щелкните в текстовом поле под меткой «Нажать короткие клавиши» и нажмите: Shift+ Alt+ Lи нажмите кнопку «Назначить», и все готово: введите описание изображения здесь

Чтобы проверить, откройте любой файл в Visual Studio и нажмите сочетание клавиш Shift+ Alt+, Lи вы увидите файл в обозревателе решений. Наслаждайтесь!

Baig
источник
Примечание: для VS2012 по схеме Visual C ++ 6 Shift + Alt + Lиспользуется для Edit.LineCut (см. Здесь ).
Кайл Канос
19

В VSS это возможно тремя способами.

  1. Вы можете нажать на Active syncзначок в обозревателе решений.

VSS Active Sync со значком в обозревателе решений

  1. Установив флажок Активная синхронизация в Сервис ( Инструменты> Параметры> Проекты и решения> Общие ). При этом установите флажок «Отслеживать активный элемент в обозревателе решений». Когда вы выбираете файл в главном окне, он автоматически переходит к активному файлу в Проводнике.

VSS_Tools_Active_sync

  1. С помощью сочетания клавиш ( Ctrl+ [+ S) вы можете перейти к активному элементу.

Примечание: 1 или 2 работает только в среднем времени. , Поэтому вы должны использовать 1-й или 2-й.

Нандхакумар М.В.
источник
15

Я нашел Sync with Active Documentкнопку в обозревателе решений наиболее эффективной (это может быть функция vs2013!)

введите описание изображения здесь

Trubs
источник
1
Раньше это работало, но теперь у меня не работает синхронизация с активным документом . Я отключил и включил его с помощьюTools -> Options -> Projects and Solutions -> "Track Active Item in Solution Explorer"
Waqar
3

В Visual Studio 2017 , ярлык: Ctrl+ ´, S.

введите описание изображения здесь

Игорь
источник