Bagaimana cara mencari file di Solution Explorer di Visual Studio 2010?


172

Saya punya solusi besar dengan banyak proyek. Kadang saya perlu menavigasi ke file di Solution Explorer . Menggunakan fitur VS 2010 ' Navigasi Ke ', saya dapat membuka file dengan nama di Visual Studio 2010 tetapi saya ingin dapat memilih file di Solution Explorer juga?


4
Pertanyaannya adalah tentang VS2010, tetapi jika seseorang melihat VS2013: Lihat Ctrl-; untuk menemukan di Solution Explorer atau Ctrl-, untuk fitur "Navigasi Ke" VS2012 / 13.
John

1
Untuk cara asli untuk VS 2012 dan di atas, lihat jawaban Aaron Carlson di bawah ini.
Derek Morrison

Jawaban:


198

Ada opsi untuk melacak item yang aktif (terbuka dan dilihat) di penjelajah solusi. Jika file dalam tampilan, file dalam explorer solusi akan dipilih.

Alat-> Pilihan-> Proyek dan Solusi-> Lacak Item Aktif di Solution Explorer


33
Pengaturan ini menyebabkan proyek dan solusi node terus diperluas saat saya membuka file. Setelah 15 menit bekerja pada proyek yang lebih besar, saya memiliki begitu banyak node yang diperluas sehingga solusi explorer menjadi tidak dapat digunakan. Solusi DPack adalah IMO yang lebih baik.
Karel Kral

@ karel-kral, saya telah menambahkan jawaban yang menggunakan Makro untuk mengaktifkan pengaturan ini yang berfungsi di sekitar masalah simpul diperluas ini.
Martin Hollingsworth

solusi resharper atau dpack yang tercantum di sini menyelesaikan masalah yang disebutkan Martin dan menjadikan jawaban ini bukan opsi yang disukai jika Anda memiliki salah satu dari yang lain tersedia untuk Anda.
Rob Sedgwick

2
Untuk VS2012 + @ jawaban Harun adalah yang terbaik. Tidak menginstal hal-hal Ctrl + [, s
BritishDeveloper

3
Dia bilang dia hanya ingin melacak file "Terkadang" tidak setiap saat. Jawaban Aaron Carlson harus ditandai sebagai jawaban yang benar.
RayLoveless

150

VS2012 menambahkan perintah baru yang disebut SolutionExplorer.SyncWithActiveDocument. Pintasan default untuk c # adalah Ctrl+ [,S

Perintah ini akan menavigasi ke file yang aktif di Solution Explorer.

Selain itu, tampaknya Anda harus mematikan opsi "Lacak Item Aktif di Solution Explorer".


4
Pengawasan besar-besaran bahwa ini tidak masuk ke Visual Studio 6.0. Atau bahkan lebih awal. WTF.
Almo

3
Terima kasih! Dalam VS2013 saya , Ctrl+ [, Ssecara default diatur untuk memeriksa file dan SolutionExplorer.SyncWithActiveDocumenttidak dikonfigurasi.
hwcverwewe

1
@ krypru, saya telah menggunakan VS2015 untuk sementara waktu dan masih berfungsi untuk saya. Mungkin tidak dipetakan ke pintasan yang sama di lingkungan Anda?
Aaron Carlson

2
FYI, tidak perlu mengingat tombol pintas: Solution Explorer (Saya di VS 2015) memiliki ikon di atas (panah ganda) yang tidak "Sinkronkan dengan Dokumen Aktif".
ToolmakerSteve

2
VS 2017 menambahkan pemetaan keyboard "ReSharper" di bawah Tools -> Options -> Environment -> Keyboard. Ini memetakan fungsionalitas VS bawaan ke pintasan ReSharper yang setara. Setelah Anda mengatur ini, Anda dapat menggunakan Shift+ Alt+ Lpintasan.
Andacious

121

Shift+ Alt+ Lakan menemukan file saat ini di Solution Explorer di Visual Studio 2008+ dengan ReSharper diinstal.


4
saat Anda melacak, Anda tidak memerlukan pintasan ini.
Davut Gürbüz

5
Ini adalah perintah Reshaper. Bekerja untuk saya dengan Visual Studio 2010 dengan ReSharper diinstal.
Radim Cernej

+1; @ DavutGürbüz Terkadang Anda membutuhkan ini untuk memulai Visual Studio 2012 agar memulai pelacakan otomatis lagi. Sesekali (meskipun kotak centang "... Lacak Aktif ..." dicentang, Visual Studio 2012 berhenti melacak. Pintasan ReSharper ini akan mengaktifkan kembali ini tanpa harus memulai ulang Visual Studio.
Jeroen Wiert Pluimers

@ JoeroWiertPluimer saya mengerti. Saya telah menggunakan ekstensi DPack. Ini sangat ringan dan mudah digunakan. Anda cukup klik kanan tab file dan pilih Temukan di Solution Explorer. Saya sangat merekomendasikannya. Ini bekerja semua versi VS. ReSharper juga bagus tapi kami tidak suka. Karena kami tidak menggunakan sebagian besar fitur-fiturnya. Itu membuat VS lebih berat. Pelacakan membuat solusi explorer berantakan. DPack adalah yang terbaik. stackoverflow.com/a/4747759/413032
Davut Gürbüz

3
Pelacakan tidak harus diaktifkan agar Shift + Alt + L berfungsi. Setidaknya tidak di VS 2010, yang saya gunakan.
Tor Haugen

36

Saya menemukan opsi trek sedikit mengganggu.

Saya lebih suka menggunakan DPack . Ini berisi operasi "Locate In Solution Explorer", ditambah banyak fitur lainnya (ada yang kurang kuat di VS2010, seperti browser mereka), dan gratis .

Perhatikan bahwa ReSharper juga memiliki fitur temukan yang berfungsi lebih baik daripada DPack (dalam beberapa kasus, lokasi DPack tidak akan berfungsi jika file diciutkan di belakang folder), tetapi Anda tidak ingin membeli ReSharper hanya untuk fitur ini .


Solusi paling mudah ("Lacak Item Aktif" menjengkelkan dan ReSharper tidak gratis).
Ian Kemp

@IanKemp, ini masalah selera. IMO pelacakannya menjengkelkan karena: 1. kadang-kadang saya suka sln tree untuk tetap fokus pada node tertentu. 2. setelah beberapa saat, pohon sln akan sepenuhnya diperluas.
HuBeZa

28

Brian Schmitt memiliki File Lokasi yang bagus di Solution Explorer - Visual Studio Macro postingan untuk ini. Makro sangat sederhana dan cepat. Pada dasarnya itu mengubah pengaturan

Tools->Options->Projects and Solutions->Track Active Item in Solution Explorer

sehingga file saat ini akhirnya dipilih di Solution Explorer tetapi, karena tidak dibiarkan, Anda tidak merasa terganggu oleh node Solution Explorer yang diperluas untuk semua file yang Anda akses.

Public Sub LocateFileInSolutionExplorer()
    DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
    DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
    DTE.ExecuteCommand("View.SolutionExplorer")
End Sub

Ikatkan Pintasan Keyboard ke makro khusus ini untuk secara efektif membuat apa yang seharusnya menjadi fitur Visual Studio bawaan.


Ini benar-benar berfungsi di VS 2010 dan lebih mudah untuk diatur daripada yang Anda pikirkan (tips untuk menambahkan makro: helixoft.com/blog/archives/6 )
user1068352

Tautan yang diposting di baris jawaban pertama terputus. Bisakah Anda memperbaikinya?
Tyagi Akhilesh

@TyagiAkhilesh - perhatikan bahwa jawaban ini (menambahkan makro Anda sendiri) hanya diperlukan jika Anda masih menggunakan VS 2010. Versi yang lebih baru memiliki perintah
bawaan

16

Jika Anda memiliki ReSharper dan ingin menambahkan "Temukan di Solution Explorer" ke menu konteks tab:

  1. Pergi ke Alat -> Kustomisasi -> Perintah -> Menu Konteks
  2. Pilih "Menu Konteks Lain | Jendela Dokumen MDI Mudah".
  3. Klik "Tambah Perintah".
  4. Pilih "Resharper" -> "ReSharper_LocateInSolutionOrAssemblyExplorer" (di VS2019, nama kategori diubah menjadi "Extensions")
  5. "OK" -> "Tutup"

Sekarang, ketika klik kanan pada sembarang tab dan Anda akan melihat opsi baru: Temukan di Solution Explorer.

MEMPERBARUI:

Mengikuti komentar dari @ jeremy-paskali, Anda dapat mengatur pintasan keyboard untuk perintah ini:

  1. Buka Tools -> Customize -> "Keyboard ..."
  2. Cari "ReSharper.ReSharper_LocateInSolutionOrAssemblyExplorer" di bidang "Tampilkan perintah yang mengandung" dan pilih.
  3. Tinjau pintasan yang saat ini ditugaskan di drop down di bawah.
  4. Buat perubahan apa pun, jika perlu.
  5. "OK" -> "Tutup"

3
Di Visual Studio 2015, jika Anda kemudian klik tombol "Keyboard ..." di bagian bawah jendela "Customize", Anda akan dibawa ke dialog Options -> Environment -> Keyboard. Dalam dialog ini, Anda dapat menavigasi ke "ReSharper.ReSharper_LocateInSolutionOrAssemblyExplorer" dan menemukan atau mengubah pintasan keyboard untuk perintah ini. Saya menemukan bahwa VS2015 saya disetel ke "Shift + Alt + L" dan berhasil!
Jeremy Paskali

Berdentang lebih dari dua tahun kemudian mengatakan trik menu konteks masih bekerja dengan VS 2017 dan R # 2018.2. Terima kasih untuk ini!
Michael Armes

Jika mencoba Shift+Alt+Ltidak berhasil untuk Anda di VS2019, maka ini pasti berhasil.
gosr

11

Saya tahu ini sedikit terlambat, tapi saya harap ini membantu orang lain. Pilihan terbaik sekarang adalah menginstal Microsoft Visual Studio add on yang disebut - Productivity Power Tools.

http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef

Dengan ini muncul "Solution Navigator" (alternatif untuk Solution Explorer, dengan banyak manfaat) - yang kemudian dapat Anda gunakan untuk memfilter file hanya menampilkan "Open". Anda bahkan dapat memfilter file untuk menampilkan "Diedit" dan "Tidak disimpan".


Saya menggunakan VS 2012 dan Power Tools. Saya tidak melihat Solution Navigator di mana pun. Apakah Anda ingin menguraikan masalah ini? Seperti memberi tahu di mana tepatnya Navigator Solusi ditemukan.
tandai

Diedit. Microsoft berencana melakukannya - tetapi akhirnya hanya memigrasi sebagian saja. Saya kecewa karena mereka mengabaikan yang satu ini juga.
teman

10

Visual Studio 2012 memiliki pintasan baru Ctrl [, S. Ya, Anda harus mengetik Ctrl [lalu melepaskan lalu segera mengetikS (atau klik ikon sinkronisasi kecil di bagian atas Solusi yang Dijelajahi). Ini akan disinkronkan ke item.

Tentu saja Anda dapat mengubah cara pintas. Saya pikir saya akan mencobaAlt+L mencari.

Jika Anda ingin mengubah pintasan, nama perintahnya di bawah Options\Environment\KeyboardisSolutionExplorer.SyncWithActiveDocument .

Biasanya ini lebih berguna daripada selalu melacak, yang dalam versi yang lebih lama selalu merupakan bencana karena akan melacak 100 item berturut-turut dan kemudian melompati semua tempat ...


Bagus !!! Dalam VS2012 saya tombol kombinasi Ctrl+', s. Jadi, Anda harus berubah [dengan penawaran '. Saya harap ini membantu seseorang.
ferpega

3
"atau klik ikon sinkronisasi kecil di bagian atas Solution Explore" Bagi saya cara termudah untuk mencapai ini di versi VS yang lebih baru. Yang bagus!
Andreas

Terima kasih @rt! Saya benar-benar mengabaikan hal itu dalam jawaban ini; tetapi Anda menyelamatkan saya dari keharusan melakukan beberapa langkah penyesuaian aneh (atau ingat jalan pintas yang tidak jelas) ...! Tombol itu harus dipanggil lebih eksplisit dalam jawaban ini :)
arichards

5

Jika Anda hanya ingin melacak file saat ini melalui pintasan keyboard - aktivitasnya adalah "View.TrackActivityinSolutionExplorer" (tetapkan tombol di sini -> Alat - Opsi - Lingkungan - Keyboard)

Credit (komentar James)

Ini berhasil untuk saya


Catatan ini mengaktifkan opsi "Lacak Item Aktif di Solution Explorer". Jika Anda tidak ingin mempertahankan opsi itu (karena itu mengganggu) Anda harus mengetikkan tombol pintas yang ditetapkan dua kali: sekali untuk menyalakannya (menemukan item yang dipilih) dan kemudian lagi untuk mematikan opsi.
Richard


0

Jika Anda ingin memilih file di explorer solusi pada perintah dan tidak ingin menginstal apa pun maka saya akan merekomendasikan makro ini .

Saya telah mengujinya, mengatur pintasan ke Alt + T, dan saya dapat mengonfirmasi bahwa ia bekerja dengan VS 2010.

Terima kasih kepada Dan Vanderboom untuk menulisnya.


0

Dalam Visual Studio 2010 Anda dapat mengaktifkan opsi "Lacak Item Aktif di Solution Explorer". Ini berarti setiap kali Anda beralih di antara dokumen, dokumen baru akan dipilih di Solution Explorer. Ini dapat menjengkelkan jika solusi Anda memiliki banyak folder, karena ketika Anda bergerak di sekitar file dalam solusi Anda semua folder akan dibiarkan terbuka.

Visual Studio 2012 memperkenalkan fitur "Sync with Active Document" baru. Tiga adalah tombol untuk itu di bagian atas Solution Explorer, atau Anda dapat menggunakan pintasan Ctrl + [, S.

tangkapan layar sinkronisasi dengan tombol dokumen aktif


Bukankah ini sudah dibahas secara memadai oleh jawaban yang ada dari tahun lalu?
ToolmakerSteve

0

Untuk Visual Studio 2017 menggunakan keyboard French AZERTY perintahnya sama dengan yang dinyatakan oleh Aaron Carlson tetapi pintasan keyboard berbeda.

Pintasan keyboard AZERTY untuk menavigasi ke file aktif untuk c # adalah Ctrl+ ),Ctrl +S

Saya memeriksa pintasan tidak berubah untuk pengguna QWERTY di VS2017 di halaman ini http://visualstudioshortcuts.com/2017/

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.