Jendela Visual Studio yang menampilkan daftar metode


126

Di Visual Studio, apakah ada jendela yang menampilkan daftar metode di kelas aktif? Jendela kecil seperti Solution Explorer akan sangat bagus. Di Eclipse, ada satu.


2
Bagi mereka yang mencari di masa depan - CodeMaid menawarkan daftar seperti itu dan banyak lagi! codemaid.net
BKSpurgeon

Jawaban:


127

Ada drop-down tepat di atas jendela kode:

alt teks

Ini disebut bilah Navigasi dan berisi tiga drop down: drop down pertama berisi proyek , tipe kedua dan anggota ketiga (metode).

Anda dapat menggunakan pintasan Ctrl+ F2(pindahkan fokus ke proyek drop down) dan tekan Tabdua kali (pindahkan fokus ke drop down ketiga) untuk memfokuskannya, panah bawah akan memperluas daftar.

Gambar ukuran penuh


16
Apakah Anda tahu jika ada jalan pintas untuk membuka ini? Sangat mengganggu menggunakan mouse untuk ini.
Mariusz Pawelski

@ ChrisF sepertinya saya tidak bisa melihat jendela itu di vs2012. Bagaimana cara mengaktifkannya?
ysrb

@ysrb - Tidak tahu. Saya masih menggunakan VS2010 di sini. Mengingat pertanyaan ini tentang VS2008, saya sarankan Anda mengajukan pertanyaan baru (tautkan kembali ke pertanyaan ini untuk menunjukkan bahwa ini bukan duplikat).
ChrisF

10
Juga mencari jalan pintas untuk membuka ini, dan / atau jendela atau bingkai yang terbuka secara permanen.
Xonatron


43

Saya menemukan cara mengaktifkan drop-down seperti yang ditunjukkan pada jawaban pertama (@ChrisF):

Pergi ke Options-> Text Editor -> (bahasa Anda)

dan centang "Bilah navigasi" di bagian tampilan.


Anda menyelamatkan pall hari saya!
Emanuel Gianico

Saya selalu merindukan bilah navigasi untuk VB.NET. Ini memungkinkannya. Terimakasih banyak.
huha

Anda akan menemukan "Opsi" di menu di bawah "Ekstra".
ohgodnotanotherone

Alat (tab)> Opsi> Editor Teks> (bahasa Anda)
SandstormNick

Terima kasih mark.oliver.asp.newbie. Saya baru saja meningkatkan dari 2015 hingga 2019 dan mencoba menemukan bilah ini di semua menu opsi.
ExcelsiorTechSolutions

30

Sejak Visual Studio 2012, Anda dapat melihat kerangka (bidang dan metode) di penelusur solusi dengan memperluas node yang sesuai dengan file Anda.


2
Saya lebih suka opsi ini daripada opsi dropdown, yang diurutkan secara mengganggu menurut abjad (menurut saya).
dbernard

Perhatikan bahwa jika Anda memiliki partial classkemudian semua anggota terdaftar di bawah node itu, tidak hanya mereka yang hanya di file itu.
Dai

24

Pintasan ke Bilah Navigasi adalah Ctrl+ F2. Membawa Anda ke dropdown jenis terlebih dahulu. Tekan tab untuk pergi ke dropdown metode, lalu masukkan metode untuk pergi ke metode itu.


22

ReSharper memiliki 'ReSharper | Windows | Jendela File Structure ', yang digunakan untuk memvisualisasikan struktur file kode saat ini.


Memang sangat berguna, tetapi apakah ada pintasan keyboard untuk jendela itu?
Nicolas

`Alt +` adalah pintasan keyboard untuk yang itu.
Hallmanac

19

Resharper memiliki jendela Struktur File yang sangat mirip dengan tampilan garis besar gerhana. Awalnya dijawab dalam:

Visual Studio 2012: Daftar semua metode di kelas

Bantuan Resharper: http://www.jetbrains.com/resharper/webhelp/Reference__Windows__File_Structure_Window.html

Tangkapan layar dari jendela File Structure


CTRL - F12 menampilkan jendela navigasi masuk ke anggota di Resharper. Ini mencantumkan semua metode di kelas dan memberi Anda opsi untuk mencari.
WoZoNe

1
CTRL - F11 menunjukkan jendela Resharper di atas. Inilah yang saya cari.
gattsbr

11

Meskipun itu pertanyaan lama, mungkin jawaban ini membantu Anda karena membantu saya.

Anda dapat mengunduh ekstensi codemaid dari sini: situs web codemaid

itu memiliki banyak fungsi yang mungkin Anda temukan di situs web mereka.

salah satu yang terkait dengan pertanyaan ini adalah penggalian kode

Visualisasikan dan navigasikan konten file C # dan C ++ Anda dari hierarki tampilan hierarki. Beralih dengan cepat di antara metode pengurutan yang berbeda untuk mendapatkan gambaran umum yang lebih baik. Seret dan lepas untuk mengatur ulang kode. Lihat skor kompleksitas McCabe dan tip alat informatif.

dengan kata lain, ini memberi Anda kemampuan untuk melihat metode dan properti dan juga mengaturnya kembali hanya dengan drag and drop. itu ekstensi penggunaan sehari-hari saya


CodeMaid mengimplementasikan kembali sebagian besar fungsionalitas VS bawaan dan sangat berlebihan dan tidak menyenangkan untuk melihat item menu duplikat yang mencemari IDE.
Ivan G.

Saya tidak berpikir begitu, beberapa fungsi yang berguna seperti ctrl+m+z, ctrl+m+space, ctrl+m+f, sort lines, clean whole solution, collapse all in solution explorer, arrange methods with drag and drop, method and properties treeadalah alat yang Anda hanya dapat menemukan di beberapa alat seperti reshraper.
Mo Hrad A

1
Saya tidak bermaksud itu sebagai pelanggaran, tetapi sebagian besar prosedur "pembersihan kode" kebanyakan memperkenalkan perang suci gaya pengkodean yang tidak saya pedulikan. Produk adalah yang pertama. Saya bahkan tidak peduli jika ada spasi dan tab dalam satu file, hanya produktivitas.
Ivan G.

Garis besar kode (sekop) memang membantu. Akan lebih bagus jika itu tetap selaras dengan anggota yang sedang aktif / dipilih di editor teks.
Markus L

@MarkusL Anda dapat membuat masalah baru di sini: github.com/codecadwallader/codemaid/labels/enhancement
Mo Hrad A

8

Tidak ada padanan langsung dengan Outline View di Eclipse. Hal terdekat yang saya temukan adalah Tampilan Kelas, yang mencantumkan semua kelas dan anggota / metode mereka. Ada kotak pencarian di bagian atas untuk mempersempit pilihan.


Sejak VS 2010 di C ++ di sini, saya lebih suka jawaban ini karena drop-down yang menyembunyikan kode saya mengganggu. Pintasan lain yang lebih nyaman untuk menampilkan Tampilan Kelas adalah Ctrl + Shift + C.
Jeff T.

5

Dalam Visual Studio 2015, Tampilan> Windows Lainnya> Tampilan Sumber Daya . Pintasan keyboardnya adalah Ctrl+ Shift+ E. Saya menemukan ini lebih bersih daripada Tampilan Kelas. Dengan Class View Windows Anda dapat memfilter metode / atribut berdasarkan pengubah akses (privat / dilindungi / publik) dll.


2
Meskipun ini mencantumkan kolom dan metode kelas, ini mengharuskan Anda menavigasi ke kelas yang diperlukan terlebih dahulu. Apa yang diminta OP adalah kelas aktif saat ini. yaitu yang saat ini terbuka dalam tampilan kode. Jika saya memiliki kelas 3000 baris panjang dengan 78 metode dan 63 bidang yang saat ini saya buka dan ingin segera menavigasi ke nama metode yang dikenal, tetapi tidak ingat lokasinya, harus menavigasi namespace terlebih dahulu tidak lebih baik daripada Ctrl-F .
Draco18s tidak lagi mempercayai SE

1
Terima kasih, inilah yang saya cari! Ini adalah alat yang sangat membantu.
pengguna1529413

4

Di bagian atas editor teks Anda, Anda harus memiliki dropdown yang mencantumkan semua metode, properti dll dalam tipe saat ini; dan dapat diklik (bahkan jika anggota tersebut ditentukan di file lain - dalam hal ini mereka berwarna abu-abu tetapi Anda masih dapat menavigasi dengan mereka).

Selain itu, jika Anda menggunakan Class Explorer ( Ctrl+ Alt+ C) untuk menavigasi proyek Anda, Anda akan mendapatkan gambaran umum lengkap dari semua tipe Anda. Namun, tampaknya tidak ada pengaturan di Alat / Opsi yang memungkinkan Anda melacak jenis aktif di jendela itu (ada untuk penjelajah solusi) - mungkin makro atau addin dalam urutan ...



1

Apakah yang Anda maksud adalah jendela tampilan kelas (View-> Class View, atau Ctrl+ W, C)?

Anda juga memiliki jendela popup kecerdasan


Saya tidak berpikir salah satu dari keduanya berguna. Pada tampilan Kelas, Anda harus menemukan kelas Anda terlebih dahulu. Untuk menunjukkan kecerdasan Anda harus menulis nama kelas di suatu tempat atau bahkan membuat instance-nya. Jawaban lain berisi solusi yang lebih cepat dan lebih mudah digunakan.
David Ferenczy Rogožan

1

Dengan Visual Studio 2010

Anda memilih Alat-> Pengaturan-> Pengaturan Ahli

Di pojok kiri bawah, Anda akan melihat tab "Tampilan Kelas" di sebelah kanan tab "Penjelajah Solusi"

Di bagian atas tata letak "Tampilan Kelas", Anda akan melihat daftar nama kelas, enum, struct, ... Di bagian bawah "Tata letak Tampilan Kelas, Anda akan melihat daftar anggota untuk kelas ini, enum atau struct


Seperti yang sudah dijawab oleh sagie, Dawid Ferenczy sudah berkomentar, "Pada tampilan Class, kamu harus mencari class kamu dulu. Untuk menunjukkan Intellisense kamu harus menulis nama class di suatu tempat atau bahkan mencontohkannya. Jawaban lain berisi solusi yang lebih cepat dan mudah digunakan. . "
Draco18s tidak lagi mempercayai SE

1

Cara bersih yang bagus untuk melakukannya adalah dengan menggunakan View.SynchronizeClassView.

masukkan deskripsi gambar di sini

Selain itu, Anda dapat:

  • sematkan jendela tampilan Kelas Anda
  • tutup panel atas (daftar semua kelas)

Dan sekarang rasanya seperti fitur Visual Assist "Daftar Metode di File Saat Ini" (yang juga daftar anggota btw).


Di mana saya menemukan itu View.SynchronizeClassView? Saya hanya dapat menemukan Tampilan Kelas "normal" di Visual Studio 2017.
user11909

Ini adalah perintah yang Anda masukkan di Command Window. Sayangnya Anda tidak dapat mengaturnya untuk menyinkronkan ClassView secara otomatis dan harus melakukannya secara manual setiap saat. Anda dapat menetapkan pintasan, tetapi ini tetap merupakan ketidaknyamanan yang tidak perlu.
mKay

0

Microsoft tidak ingin mengimplementasikan alat yang berguna ini, tetapi jika secara kebetulan Anda dapat memiliki Visual Assist, Anda memilikinya di VAssistX> Tools> VA Outline . Plugin ini tidak gratis.


0

Saya telah menggunakan USysWare DPack sejak lama. Ini sangat kecil dan tidak mengganggu jadi jika yang Anda inginkan hanyalah jendela pintasan cepat yang menampilkan daftar metode file saat ini yang Anda gunakan, itu hanya menyediakan itu. Untung penulis masih aktif setelah lebih dari 10 tahun hanya untuk tetap menyediakan fitur yang sama ke rilis VS terbaru.

https://marketplace.visualstudio.com/items?itemName=SergeyM.DPack-16348

Setelah instalasi, cukup gunakan Alt + Muntuk membuka jendela daftar metode. Saya lebih suka menampilkan semua anggota, tetapi terserah Anda.


-1

Di VS 2012, buka saja View> Class View ... lalu Anda mendapatkan GUI Tampilan Kelas di area tab utama. Sekarang, seret ini ke dok samping dan Anda memiliki tata letak yang sama persis seperti yang Anda lakukan di Eclipse.

-e


Ini sesuatu yang berbeda. Itu tidak menunjukkan anggota kelas saat ini (kelas dibuka di editor). Anda harus menemukannya secara manual. Lebih baik menggunakan penjelajah Solusi (perluas file dan kelas di bawahnya), karena Anda dapat menyinkronkannya dengan file saat ini.
David Ferenczy Rogožan

-1

Cara terbaik untuk melakukan ini adalah, bahwa saya buka Definisi Jendela Code, di bawah View -> Kode Definition Jendela atau tekan Ctrl+ W, D.

Dan kemudian saya mendapatkannya mengambang dan saya memiliki definisi metode di jendela terpisah.

Salam


Bagaimana cara menjawab pertanyaan OP? Dia tidak membutuhkan definisi sama sekali, hanya daftar anggota kelas. Untuk melihat definisi, biasanya Anda hanya dapat mengklik dua kali metode dalam daftar tersebut.
David Ferenczy Rogožan

-4

grep -i "sub" namafile.vb> metode.txt grep -i "fungsi" namafile.vb >> metode.txt


Tolong jelaskan bagaimana ini memberikan jawaban atas pertanyaan itu.
AdrianHHH

Ini menjawab pertanyaan karena solusi itu menyediakan daftar semua sub dan fungsi dalam kelas vb.
John Reichert

Dia tidak menginginkan daftar metode di kelas. Dia membutuhkan jendela di Visual Studio dengan daftar metode di kelas aktif . Dia juga mereferensikan hal yang sama di Eclipse. Jelas sekali bahwa jawaban Anda tentang sesuatu yang sama sekali berbeda.
David Ferenczy Rogožan
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.