Згорнути всі # регіони (!) У C # (Visual Studio)


103

Існує ряд комбінацій клавіш та команд меню для автоматичного розширення або згортання всіх складних файлів у поточному документі. Ctrl+ M, Ctrl+ Lперемикає всі складові рекурсивно, від верхнього простору імен до внутрішніх методів та коментарів. В основному все, що має ліву піктограму [+]. Ctrl+ M, Ctrl+ Oробить це трохи менше, але все ж торкається методів та коментарів усередині класу.

Я шукаю функцію, яка стосується лише#region складних матеріалів і нічого іншого. Не простори імен, класи, коментарі чи методи. Мені дуже хочеться лише скласти #regionключові слова ті області, які явно позначені як такі .

Чи є прихований ярлик або розширення для цього?

Я вважаю за краще рішення клавіатури для Visual Studio 2015 (RC на даний момент).

Якщо хтось запитує, чому: я хочу переглянути огляд файлу, але негайно побачити всі деталі, коли я вирішу заглянути в один регіон.


Оновлення:

Рішення у 2020 році

Оскільки це запитання отримало багато відповідей, деякі з них марні, інші застарілі, робоче рішення для Visual Studio 2019 можна знайти в цій заниженій відповіді тут: https://stackoverflow.com/a/58999093/143684


Я не думаю, що так (відкрито для виправлення). Ви спробували перегляд класу - він покаже всім учасникам класу (не випадаючим у верхній частині текстового редактора), і ви можете двічі клацнути, щоб перейти до вибраного члена.
amcdermott

1
Я думаю, що такого немає, Ctrl + M, Ctrl + O - найближчий
voytek

У вікні Перегляд класів містяться всі елементи в одному плоскому списку, а не "регіоналізовані". Це не те, для чого я використовую регіони. Мені потрібні регіони для швидкого пошуку членів за темами, особливо в довгих класах з невеликою кількістю подібних методів, кожен для іншого типу моделі. Регіони групують їх за типом моделі тут.
ygoe

Відповіді:


210

у Visual Studio 2017 мені потрібно активувати "Згорнути # регіони при згортанні до визначень" в

Tools -> Options -> Text Editor -> C# -> Advanced

явно згортати всі при натисканні Ctrl+ M+O


8
На жаль, це також руйнує все інше (майже), а не лише регіони. Тож це не те, що я шукаю. Розширення Quick Launch Tasks все ще існує для VS 2017 і може бути встановлено окремо зараз, дивіться мені інший коментар.
ygoe

20
Це може бути не те, про що просила ОП, але це те, що я шукав.
Гомер

11
Опція в поточній збірці - "Згорнути # регіони при згортанні до визначень", і вона розташована в Інструментах> Параметри> Текстовий редактор> C #> Додатково. Це я і шукав. Це змушує Ctrl + M + O працювати так, як це робилося у VS 2015
Метт Бекер

65

Ctrl+ M+ Oобвалить усіх.

Ctrl+ M+ Lрозширить усі. (у VS 2013 - Змінити всі контури)

Ctrl+ M+ Pрозширить усе та відключить контур.

Ctrl+ M+ Mзгортається / розширює поточний розділ.

Ці параметри також знаходяться в контекстному меню в розділі "Виклади"

Клацніть правою кнопкою миші в редакторі -> Контур, щоб знайти всі параметри. (Відключивши контур, використовуйте ті ж кроки, щоб активувати конфігурацію.)


1
Це дійсно єдина правильна відповідь ... CTRL + (M, тоді O / L) розширює / згортає лише регіони на сторінці, які безпосередньо відповідають на початкове запитання.
Леві Фуллер

15
Не вірно вже з VS2017RC. Об'єднання всіх регіонів не руйнує. (Принаймні поточна збірка: 15.0.2620.0)
Франсуа

3
Про VS 2017 дивіться відповідь від @Myz нижче.
Джеффрі Хармон

29

Розширення Visual Studio Productivity Power Tools 2015 від Microsoft має функцію під назвою Завдання швидкого запуску, яка додає нові команди в меню швидкого запуску. Один з них - CollapseRegions, і він робить саме це.

Протилежна команда - ExpandRegions, і вона розширює всі регіони для швидкого перегляду всього файлу. Ці команди можна використовувати досить швидко, натиснувши швидку клавішу CtrlQта ввівши Collвідповідь. Exp, потім натискання Enter(якщо ви не маєте інших команд з тим же префіксом).


7
Ось відповідне розширення для Visual Studio 2017: Завдання швидкого запуску
ygoe

Більше не діє для Visual Studio 2019, оскільки вони змінили спосіб роботи Quick Tasks.
Літопис

17

Згорнути регіони: Інструменти> Опції> Текстові редактори> C #> Додатково> Поставте прапорець "Згорнути # регіони при згортанні до визначень"

Згорнути #regions image


О, у нас це вже було 3 роки тому. Перегляньте найвідповідальнішу відповідь.
ygoe

10

Поставте галочку в Налаштуваннях -> TextEditor -> C # -> Додатково -> Згорнути # регіони при згортанні визначень.

потім клацніть правою кнопкою миші в редакторі> контур> згортання до визначень


7

Схоже, що найближче - Ctrl+ M, Ctrl+S

Яка згортає поточний регіон, в якому ви перебуваєте, а Ctrl+ M, Ctrl+E розширюватиме поточний регіон, у якому ви перебуваєте.

Список комбінацій клавіатур за замовчуванням:

https://msdn.microsoft.com/en-us/library/da5kh0wa(v=vs.140).aspx


7

Я не знаю, чи це нове, але є налаштування для текстового редактора c #:

Налаштування -> TextEditor -> C # -> Додатково -> Згорнути # регіони при згортанні визначень.

Коли його набір CtrlM CtrlOзруйнує # регіони.


7

Я знаю, що це старе питання, але ось оновлення для візуальної студії 2019:

Рішення Quick Tasks з відповіді @ ygoe не працює для Visual Studio 2019, оскільки ця версія змінила спосіб пошуку панелі швидких завдань. Плюс це ніколи не було кращим рішенням оригінального питання, оскільки вам потрібно було ввести швидку дію, а не комбінацію клавіш.

На ринку я знайшов інше рішення, яке точно збігає і розширює всі регіони в відкритому файлі, який в даний час відкривається за допомогою комбінацій клавіш: Згорнути область

На сторінці розширення:

Типовими прив'язками клавіш є (Ctrl + R, Ctrl + Num +) і (Ctrl + R, Ctrl + Num-). Можна змінити в Інструменти-> Параметри-> Навколишнє середовище-> Клавіатура.


Дякую за цю чудову інформацію! Оскільки я не використовую швидких завдань для багатьох інших, я можу просто переключитися на це розширення. Перевірено та працює (у VS 2017 та 2019).
ygoe

4

Рекомендую скористатися безкоштовним розширенням Visual Studio "Розширення інструментів Menees VS для Visual Studio." Просто шукайте його в Інструменти -> Розширення та оновлення у Visual Studio. Після встановлення вам просто потрібно натиснути Ctrl+ M+ Kі просто регіони будуть згорнуті. Ось їхній веб-сайт https://marketplace.visualstudio.com/items?itemName=BillMenees.MeneesVSTools2013

Щоб відредагувати налаштування, подивіться у розділі Інструменти -> Параметри -> Менеджери інструментів VS -> Загальні.


-2

Виберіть Усі через, Ctrl Aа потімCtrl M M

тобто натисніть Mдвічі, утримуючиCtrl


Вибач, ні. Це згортає все, включаючи простори імен, класи, методи та коментарі. Про це явно не вимагали.
ygoe
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.