Perkecil semua #regions only (!) Di C # (Visual Studio)


103

Ada sejumlah pintasan keyboard dan perintah menu untuk secara otomatis meluaskan atau menciutkan semua foldable dalam dokumen saat ini. Ctrl+ M, Ctrl+ Lmengalihkan semua file yang dapat dilipat secara rekursif, dari namespace atas ke metode dalam dan komentar. Pada dasarnya semua yang memiliki ikon [+] di margin kiri. Ctrl+ M, Ctrl+ Omelakukannya sedikit lebih sedikit, tetapi masih menyentuh metode dan komentar di dalam kelas.

Saya mencari fungsi yang secara khusus hanya berhubungan dengan #regionfoldable dan tidak ada yang lain. Bukan ruang nama, kelas, komentar, atau metode. Saya benar-benar hanya ingin melipat area yang secara eksplisit ditandai dengan #regionkata kunci.

Apakah ada pintasan tersembunyi atau ekstensi untuk itu?

Saya lebih suka solusi keyboard, untuk Visual Studio 2015 (RC untuk saat ini).

Jika ada yang bertanya mengapa: Saya ingin mendapatkan gambaran umum dari file tersebut, tetapi segera melihat semua detailnya ketika saya memutuskan untuk melihat ke dalam satu wilayah.


Memperbarui:

Solusi pada tahun 2020

Karena pertanyaan ini telah menerima banyak jawaban, beberapa di antaranya tidak berguna, yang lain sudah usang, solusi yang berfungsi untuk Visual Studio 2019 dapat ditemukan dalam jawaban yang kurang dihargai ini di sini: https://stackoverflow.com/a/58999093/143684


Saya tidak berpikir begitu (terbuka untuk koreksi). Sudahkah Anda mencoba tampilan kelas - ini akan menampilkan semua anggota kelas (bukan drop-down di bagian atas editor teks) dan Anda dapat mengklik dua kali untuk melompat ke anggota yang dipilih.
amcdermott

1
Saya pikir tidak ada hal seperti itu, Ctrl + M, Ctrl + O adalah yang paling dekat
voytek

Jendela Tampilan Kelas berisi semua item dalam satu daftar datar, bukan "wilayah" sama sekali. Bukan untuk itu saya menggunakan wilayah. Saya membutuhkan wilayah untuk menemukan anggota dengan cepat berdasarkan topik, terutama di kelas yang panjang dengan sejumlah kecil metode serupa masing-masing untuk jenis model yang berbeda. Wilayah mengelompokkannya menurut jenis model di sini.
ygoe

Jawaban:


210

di Visual Studio 2017 saya harus mengaktifkan 'Ciutkan #regions saat runtuh ke definisi' di

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

secara eksplisit menciutkan semua saat menekan Ctrl+ M+O


8
Sayangnya ini juga meruntuhkan segalanya (hampir), bukan hanya daerah. Jadi bukan ini yang saya cari. Ekstensi Quick Launch Tasks masih ada untuk VS 2017 dan dapat diinstal secara terpisah sekarang, lihat saya komentar lain.
ygoe

20
Ini mungkin bukan yang diminta OP, tapi itulah yang saya cari.
Homer

11
Opsi di build saat ini adalah "Ciutkan #region saat menciutkan ke definisi" dan terletak di Alat> Opsi> Editor Teks> C #> Tingkat Lanjut. Ini juga yang saya cari. Ini membuat Ctrl + M + O bekerja seperti yang dilakukannya di VS 2015
Matt Becker

65

Ctrl+ M+ Oakan menciutkan semua.

Ctrl+ M+ Lakan memperluas semua. (dalam VS 2013 - Toggle All outlining)

Ctrl+ M+ Pakan memperluas semua dan menonaktifkan penggambaran.

Ctrl+ M+ Makan menciutkan / memperluas bagian saat ini.

Opsi ini juga ada di menu konteks di bawah Kerangka.

Klik kanan di editor -> Outlining untuk menemukan semua opsi. (Setelah menonaktifkan kerangka, gunakan langkah yang sama untuk mengaktifkan penjelajahan.)


1
Ini benar-benar satu-satunya jawaban yang benar ... CTRL + (M lalu O / L) hanya akan memperluas / menciutkan wilayah di halaman yang langsung menjawab pertanyaan asli.
Levi Fuller

15
Tidak benar lagi dengan VS2017RC. Menyatukan semua tidak menciutkan wilayah. (Setidaknya build saat ini: 15.0.2620.0)
François

3
Untuk VS 2017, simak jawaban dari @Myz di bawah ini.
Jeffrey Harmon

29

Ekstensi Visual Studio Productivity Power Tools 2015 dari Microsoft memiliki fitur bernama Quick Launch Tasks yang menambahkan perintah baru ke menu Quick Launch. Salah satunya adalah CiutkanRegions dan ia melakukan hal itu.

Perintah sebaliknya adalah ExpandRegions dan itu memperluas semua wilayah untuk penelusuran cepat seluruh file. Perintah-perintah ini dapat digunakan dengan cukup cepat dengan menekanCtrlQ hotkey dan mengetik Collresp. Exp, lalu tekan Enter(jika Anda tidak memiliki perintah lain dengan awalan yang sama).


7
Berikut adalah ekstensi yang sesuai untuk Visual Studio 2017: Tugas Peluncuran Cepat
ygoe

Tidak lagi valid dengan Visual Studio 2019 karena mengubah cara kerja pencarian Tugas Cepat.
Tawarikh

17

Untuk menciutkan kawasan: Alat> Opsi> Editor Teks> C #> Lanjutan> Centang "Ciutkan #region saat menciutkan ke definisi"

Ciutkan gambar #regions


Oh, kami sudah memilikinya 3 tahun yang lalu. Lihat jawaban paling atas.
ygoe

10

centang Tanda Centang di Pengaturan -> TextEditor -> C # -> Lanjutan -> Ciutkan #regions saat menciutkan definisi.

lalu klik kanan di editor> menguraikan> ciutkan ke definisi



7

Saya tidak tahu apakah ini baru, tetapi ada pengaturan untuk teks c #:

Pengaturan -> TextEditor -> C # -> Lanjutan -> Ciutkan #regions saat menciutkan definisi.

Saat kumpulannya CtrlM CtrlOakan menciutkan #regions.


7

Saya tahu ini adalah pertanyaan lama, tetapi inilah pembaruan untuk studio visual 2019:

Solusi Tugas Cepat dari jawaban @ ygoe tidak berfungsi untuk Visual Studio 2019, karena versi itu mengubah cara pencarian bilah Tugas Cepat. Ditambah itu tidak pernah menjadi solusi yang disukai untuk pertanyaan asli, karena Anda perlu mengetik tindakan cepat daripada memiliki pintasan keyboard.

Saya menemukan solusi berbeda di pasar yang benar-benar meruntuhkan dan memperluas semua wilayah di file yang saat ini dibuka dengan pintasan keyboard: Ciutkan Wilayah

Dari halaman ekstensi:

Binding tombol default adalah (Ctrl + R, Ctrl + Num +) dan (Ctrl + R, Ctrl + Num-). Dapat diubah di Tools-> Options-> Environment-> Keyboard.


Terima kasih atas info bagus ini! Karena saya tidak menggunakan tugas cepat untuk banyak hal lain, saya mungkin beralih ke ekstensi itu. Diuji dan berfungsi (di VS 2017 dan 2019).
ygoe

4

Saya merekomendasikan menggunakan ekstensi Visual Studio gratis "Menees VS Tools Extension for Visual Studio." Cukup cari di Tools -> Extensions and Updates di Visual Studio. Setelah terinstal, Anda hanya perlu menekan Ctrl+ M+ Kdan hanya wilayah yang akan diciutkan. Ini situs web mereka https://marketplace.visualstudio.com/items?itemName=BillMenees.MeneesVSTools2013

Untuk mengedit pengaturan lihat di bawah Tools -> Options -> Menees VS Tools -> General.


-2

Pilih Semua lewat Ctrl AlaluCtrl M M

yaitu Tekan Mdua kali sambil menahanCtrl


Maaf tidak. Ini menciutkan semuanya termasuk ruang nama, kelas, metode, dan komentar. Ini secara eksplisit tidak diminta.
ygoe
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.