Fitur Tersembunyi dari Visual Studio (2005-2010)?


182

Visual Studio adalah produk yang sangat besar sehingga bahkan setelah bertahun-tahun bekerja dengannya saya kadang menemukan cara baru yang lebih baik untuk melakukan sesuatu atau hal-hal yang bahkan tidak saya ketahui adalah mungkin.

Misalnya-

  • Crtl+ R, Ctrl+ Wuntuk menampilkan spasi putih. Penting untuk mengedit skrip pembuatan Python.

  • Di bawah "HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\Text Editor" buat string yang disebut panduan dengan nilai "RGB (255,0,0), 80" memiliki garis merah di kolom 80 di editor teks.

Fitur tersembunyi apa lagi yang Anda temukan?


Terima kasih! Akhirnya 80 kolom di VS :)
Jonas Gulle

Terima kasih. sebenarnya, saya sengaja menemukan "ruang putih" tanpa sengaja, dan ingin menyingkirkannya. Terima kasih banyak!
Arsen Zahray

Jawaban:


123

Buat pilihan dengan menekan ALT - memilih kotak teks daripada seluruh baris.


9
Ctrl-Alt akan memilih seluruh kata. Alt akan mengubah ukuran area pemilihan dengan satu karakter sekaligus.
Shotfly

4
Ini berfungsi di MS Word dan OO Writer juga. Saya sudah sering menggunakannya.
Bård

3
Ini (disebut "blok pilih") juga berfungsi dengan alt + shift tahan keyboard lalu gunakan tombol panah.
arolson101

1
Selain itu, jika Anda memilih kolom horizontal kosong dengan cara ini, apa pun yang Anda ketik akan diduplikasi di setiap baris, berperilaku seperti kursor besar :)
Sedat Kapanoglu

1
Saya melihat ini dijual sebagai fitur untuk VS 2010, tapi saya baru mencobanya di VS 2008 dan berhasil. Saya terperangah. ini sangat berguna!
DaveDev

95

Tracepoints!

Letakkan breakpoint pada satu baris kode. Buka Window Breakpoints dan klik kanan pada breakpoint baru. Pilih 'Saat Hit ...'. Dengan mencentang kotak 'Cetak pesan' Visual Studio akan mencetak pesan ke Output Debug setiap kali baris kode dieksekusi, bukan (atau juga) menerobosnya. Anda juga bisa mendapatkannya untuk menjalankan makro saat melewati garis.


1
Saya tahu saya terlambat ke permainan, tapi itu fitur hebat yang tidak pernah saya ketahui!
Jerry

7
Untuk poin tambahan, Anda dapat membuat penugasan variabel lokal di tombol tekan saat. {localVariable = 1.0f} atau naikkan nilainya dengan {staticVariable + = 0.1f}
Charles Beattie

91

Anda dapat menyeret kode ke ToolBox. Cobalah!


Omong kosong sehingga Anda bisa! (Terima kasih!)
Ali Parr

sepertinya tidak terlalu banyak menggunakan potongan
jk.

33
Ya Tuhan ... ini adalah level baru dari copy-and-paste. Salin-dan-tempel-tempel-tempel. Saya tahu banyak programmer yang saya harap tidak pernah tahu bahwa Anda dapat melakukan ini.
Ryan Lundy

Akan lebih keren jika Anda bisa mengatakannya untuk mengevaluasi kode ketika Anda mengklik tombol, seperti bookmarklet.
intuited

Oh tidak. Apa yang dilakukan fungsi bastardize ini!

79

Klik sebuah pengenal (nama kelas, variabel, dll) lalu tekan F12untuk "Go To Definition". Saya selalu kagum dengan berapa banyak orang yang saya menonton kode menggunakan metode klik kanan yang lebih lambat -> "Go To Definition".

Sunting: Kemudian Anda dapat menggunakan Ctrl+ -untuk melompat kembali ke tempat Anda sebelumnya.


8
Dan jangan lupa Ctrl + Shift + - [control shift minus] untuk melompat maju!
Kevin Pullin

5
Dan Shift F12 untuk Temukan semua referensi
Benjol

2
Anda juga dapat menggunakan ALT + panah kiri untuk kembali ke tempat Anda sebelumnya
arolson101

1
Dengan pengaturan tombol VB, Shift-F2 juga melakukan Go To Definition.
Ryan Lundy

1
Mungkin juga klik kanan-G jika Anda akan mengarahkan rute mouse di tempat pertama.
tsilb

57

CTRL + SHIFT + V akan berputar melalui clipboard Anda, Visual Studio menyimpan riwayat salinan.


ini dapat ditemukan di edit.cycleclipboardring di pemetaan keyboard (dalam visual c ++ ini adalah Ctrl-Shift-Insert, bukan Ctrl-Shift-V)
Default

52

Sara Ford memberikan banyak tips menarik: http://blogs.msdn.com/saraford/archive/tags/Visual+Studio+2008+Tip+of+the+Day/default.aspx

Tetapi beberapa favorit saya adalah Cuplikan Kode, Ctrl+ .untuk menambahkan using<Namespace> atau menghasilkan metode rintisan. Saya tidak bisa hidup tanpanya.

Lihatlah daftar hebat di poster Visual Studio 2008 C # Keybinding: http://www.microsoft.com/downloadS/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=en


1
Sara Ford adalah dewi Visual Studio. Saya tidak bisa merekomendasikan dia cukup.
Chris Charabaruk

Sepenuhnya setuju yang saya mengapa saya berbagi pekerjaannya. Saya sangat menyukai serialnya saat ini yang mencakup debugging
Aaron Powell

Sedih bahwa dia berhenti melakukan ujung hari, meskipun sudah begitu lama sejak dia bekerja dengan jeroan VS bahwa itu benar-benar dimengerti bahwa ia harus pindah ...
Knobloch

Terima kasih telah menyebutkan CTRL +. Saya sedang mencari yang ini tepatnya.
Sorin Comanescu

Saya selalu menggunakan CTRL + ALT + F10. Tidak tahu CTRL +. melakukan hal yang sama - terima kasih. Jauh lebih nyaman.
Noam Gal

49
CTRL-K, CTRL-D

Memformat ulang dokumen!
Ini berada di bawah ikatan kunci VB, tidak yakin tentang C #


3
ya, bekerja di bawah C #, Desainer Web, editor XML, editor CSS, editor XSD, JavaScript (sampai batas tertentu). Sebagian besar jenis file yang didukung
Aaron Powell

8
Ctrk-K, Ctrl-F untuk C ++
MSalters

7
Saya menggunakan Ctrl-E, Ctrl-D
configurator

Ctrl + K, Ctrl + F juga memformat teks apa pun yang telah Anda pilih (dalam C #, tidak yakin tentang orang lain).
Zann Anderson

43

Berapa kali Anda men-debug array di jam tangan cepat atau jendela arloji dan hanya memiliki studio visual yang menunjukkan elemen pertama? Tambahkan ", N" ke akhir definisi untuk membuat studio menunjukkan Anda item N berikutnya juga. IE "this-> m_myArray" menjadi "this-> m_array, 5".


41

Pencarian tambahan: Ketika memiliki dokumen sumber hit terbuka (CTRL + I) dan ketik kata yang Anda cari, Anda dapat menekan (CTRL + I) lagi untuk melihat kata-kata yang cocok dengan input Anda.


4
Ini disebut "> saya <pencarian ncremental".
Constantin

Berbeda dengan> ex <cremental search, yang mengimplementasikan Firefox.
kibibu

Datang dari dunia Emacs, ini fitur pertama yang saya cari. :)
JesperE

37

Anda dapat menggunakan kode berikut di jendela arloji.

@err - display last error
@err,hr - display last error as an HRESULT
@exception - display current exception

35
  • Ctrl-K, Ctrl-C untuk mengomentari blok teks dengan // di awal
  • Ctrl-K, Ctrl-U untuk menghapus tanda komentar pada blok teks dengan // di awal

Tidak bisa hidup tanpanya! :)


Juga berlaku di VB.NET, kecuali dengan 'daripada //
ChrisA

Juga berlaku di SQL Server Management Studio, kecuali menggunakan urutan pelarian komentar SQL '-'
Thomas Bratt

3
Saya selalu berharap Anda bisa beralih komentar? Mengapa Anda ingin "menggandakan komentar" sesuatu? Tentunya menekannya lagi harus berhenti berkomentar ...
Dan Diplo

16
Terkadang Anda ingin mengomentari seluruh fungsi, dan beberapa baris di dalamnya sudah dikomentari (yaitu mereka adalah komentar yang tepat). Dalam kasus seperti itu, tidak jelas apa yang harus dilakukan jika Anda memiliki toggle, jadi umumnya lebih baik untuk membuat keputusan eksplisit.
Pavel Minaev

1
Perhatikan bahwa jika Anda mulai di awal teks dan bukan di awal baris, Anda akan mendapatkan / * * / bukannya //. Ini adalah fitur saya yang paling sering digunakan
Default

25

Menghentikan debugger dari melangkah ke fungsi sepele.

Saat Anda melangkah melalui kode di debugger, Anda dapat menghabiskan banyak waktu untuk masuk dan keluar dari fungsi yang tidak terlalu Anda minati, dengan nama-nama seperti GetID (), atau std :: vector <> (), untuk memilih contoh C ++. Anda dapat menggunakan registri untuk membuat debugger mengabaikannya.

Untuk Visual Studio 2005, Anda harus membuka HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ 8.0 \ NativeDE \ StepOver dan menambahkan nilai string yang berisi ekspresi reguler untuk setiap fungsi atau rangkaian fungsi yang ingin Anda kecualikan; misalnya

std :: vector. * ::. *
TextBox :: GetID

Anda juga dapat menimpa ini untuk pengecualian individual. Misalnya, misalkan Anda memang ingin masuk ke destructor kelas vektor:

std :: vector. * :: \ ~. * = StepInto

Anda dapat menemukan detail untuk versi lain dari Visual Studio di http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx


Wow, ini luar biasa. Saya tidak tahu ini mungkin.
j_random_hacker

23

Ctrl-F10 : lari ke kursor selama debugging. Butuh waktu lama bagi saya untuk menemukan ini, dan saya menggunakannya sepanjang waktu;

Ctrl-E, Ctrl-D : terapkan pemformatan standar (yang dapat Anda tetapkan).


1
Ctrl + Shift + F10 untuk melewati semua kode dan lari ke kursor. Bagus saat mencoba menguji baris kode tertentu.
Samuel Slade

23

Fitur kunci TAB .

  1. Jika Anda tahu nama kunci cuplikan, tulis dan klik Tab ganda. misalnya: Tulis

    foreach

lalu klik tombol tab dua kali untuk

foreach (object var in collection_to_loop)
{

}

2. Jika Anda menulis acara apa pun, tulis di sini

        Button btn = new Button();
        btn.Click +=         

lalu klik tombol tab dua kali untuk

private void Form1_Load(object sender, EventArgs e)
{
        Button btn = new Button();
        btn.Click += new EventHandler(btn_Click);     
}    
void btn_Click(object sender, EventArgs e)
{
        throw new Exception("The method or operation is not implemented.");
}

btn_Klik fungsi tulis secara otomatis

  1. di XAML Editor, Tulis acara apa pun. sebagai contoh:

MouseLeftButtonDownlalu klik tab
MouseLeftButtonDown=""lalu klik tab lagi MouseLeftButtonDown="Button_MouseLeftButtonDown"dalam Button_MouseLeftButtonDownmetode bagian kode yang dibuat.


21

Sara Ford memiliki pasar ini terpojok.

http://blogs.msdn.com/saraford/default.aspx

Lebih banyak tips dan trik Visual Studio daripada yang bisa Anda goyang.

Beberapa lainnya:

  • Visual Studio 2005 dan 2008 edisi percobaan 3 bulan berfungsi penuh, dan dapat digunakan tanpa batas waktu (selamanya) dengan mengatur kembali jam sistem sebelum membuka VS. Kemudian, ketika VS dibuka, atur kembali jam sistem agar datetime Anda tidak kacau.
  • Tapi itu benar-benar pembajakan dan saya tidak bisa merekomendasikannya, terutama ketika siapa pun dengan alamat .edu bisa mendapatkan versi Pro VS2008 yang berfungsi penuh melalui Microsoft Dreamspark .
  • Anda dapat menggunakan Visual Studio untuk membuka executable pihak ketiga, dan menelusuri sumber daya yang tertanam (dialog, tabel string, gambar, dll) yang tersimpan di dalamnya.
  • Visualisasi debugging sebenarnya bukan fitur "tersembunyi" tetapi mereka agak diabaikan, dan sangat berguna, karena selain menggunakan visualisator yang disediakan Anda dapat memutar sendiri untuk set data tertentu.
  • Perintah "Set Instruction Pointer" Debugger atau "Set Next Statement".
  • Breakpoint bersyarat (seperti yang dicatat KiwiBastard).
  • Anda dapat menggunakan Quickwatch, dll. Untuk mengevaluasi tidak hanya nilai variabel, tetapi juga ekspresi runtime di sekitar variabel itu.

3
Jika ini benar-benar pembajakan (yang saya setujui dengan Anda), lalu mengapa Anda bahkan menyebutkannya?
Ryan Lundy

1
Kyralessa, karena beberapa orang mungkin tidak peduli. Namun, dengan edisi Express yang gratis saya ragu ada alasan sebenarnya saat ini untuk menggunakan versi VS bajakan.
Joey


17

Tinggi dropdown IntelliSense kustom , misalnya menampilkan 50 item, bukan default yang IMO sangat kecil (8).

(Untuk melakukan itu, sesuaikan ukuran dropdown lain kali Anda melihatnya, dan Visual Studio akan mengingat ukuran yang Anda pilih lain kali membuka dropdown.)


4
Anda tidak dapat mengubah ukurannya lagi di VS2010, itu mengganggu saya sampai akhir.
manixrock

di Vs2008 saya bisa mengubah lebar tetapi tidak tinggi.
Kapil

16

Ditemukan hari ini:

Ctrl + .

Membuka menu konteks untuk refactoring (lalu yang dapat diakses melalui huruf terakhir yang digarisbawahi dari kelas / metode / properti yang baru saja Anda ganti namanya - arahkan mouse ke menu atau "Ctrl" + ".")


Alt + Shift + F10 juga melakukan ini (menggunakan C # keybindings)
Kyle Trauberman

4
Jauh lebih baik daripada mencoba memburu target klik tikus kecil dalam situasi ini
Richard Ev

14

Banyak orang tidak tahu atau menggunakan debugger untuk itu sepenuhnya - IE hanya menggunakannya untuk menghentikan kode, tetapi klik kanan pada lingkaran merah dan ada lebih banyak pilihan seperti break on condition, run code on break.

Anda juga dapat mengubah nilai variabel saat runtime menggunakan debugger yang merupakan fitur hebat - menyimpan kode rerunning untuk memperbaiki kesalahan logika konyol dll.


13

Line transpose, Shift-Alt-T
Bertukar dua baris (sekarang dan berikutnya) dan memindahkan kursor ke baris berikutnya. Aku menyukainya. Saya bahkan telah menulis makro yang mengubah lagi posisi dengan satu baris, mengeksekusi garis transpos dan mengubah posisi garis lagi sehingga semuanya tampak seperti saya menukar baris saat ini dengan sebelumnya (Reverse line transpose).

Word transposisi, Shift-Ctrl-T


Ini membuat garis bergerak ke bawah halaman, bagaimana Anda membuat garis bergerak ke atas halaman?
Alex Baranosky

GordonG, saya sudah menulis makro berikut: Sub ReverseLineTranspose () DTE.ActiveDocument.Selection.LineUp DTE.ExecuteCommand ("Edit.LineTranspose") DTE.ActiveDocument.Selection.LineUp End Sub
okutane

1
Bisa lakukan dengan itu di sini ternyata :)
Benjol

11

Saat mengembangkan C ++, Ctrl-F7 hanya mengkompilasi file saat ini.


11

Garis Besar Dokumen di FormsDesigner ( CTRL + ALT + T )

Mengganti nama kontrol dengan cepat, memesan, dan banyak lagi!


Saya tidak percaya saya tidak tahu tentang ini. Hidupku berubah.
HipsterZipster

11

Untuk menyinkronkan file saat ini dengan Solution Explorer. Jadi tidak perlu melihat di mana file tersebut berada dalam struktur proyek

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

Sunting: Jika ini terlalu menjengkelkan bagi Anda maka Anda dapat menggunakan makro Dan Vanderboom untuk menjalankan fitur ini sesuai permintaan melalui penekanan tombol.

(Catatan: Diambil dari komentar di bawah oleh Jerry).


3
ini menjengkelkan setelah beberapa saat. Saya berharap ada pintasan keyboard untuk melakukan ini sesuai permintaan.
kenwarner

2
Berikut adalah pos tentang cara melacak saat diminta. dvanderboom.wordpress.com/2008/03/21/…
Jerry

Jika Anda memiliki banyak file yang terbuka, itu dapat membunuh VS (tanpa peringatan) jika Anda melakukan hal-hal seperti 'Tutup semua kecuali ini' (dari PowerCommands, saya pikir).
Benjol

Resharper membuat kebutuhan ini berlebihan karena Anda dapat melakukan Shift + Alt + L untuk melompat langsung ke file saat ini di Solution Explorer; atau Ctrl + Shift + N untuk mencari kata kunci untuk file apa pun di Solusi.
cbp

9

Saya tidak yakin apakah itu "tersembunyi", tetapi tidak banyak orang tahu tentang hal itu - pseudoregister . Sangat berguna saat debugging, saya sudah @ERR, jam di jendela arloji saya sepanjang waktu.


1
Saya pernah mendengar @xxx dihapus dari $ xxx. FWIW, WinDbg juga menggunakan formulir $ xxx.
Constantin

Tidak bisakah kau melakukan "jam, jam" di jendela arloji? Saya sudah menggunakannya sejak VC6 ...
LarryF

Luar biasa. Seperti yang disarankan artikel yang ditautkan, pengaturan breakpoint bersyarat pada @TIB akan secara drastis menyederhanakan proses debug aplikasi multithreaded.
j_random_hacker

9

Ctrl-Minus, Ctrl-Plus, menavigasi maju dan mundur ke tempat Anda baru-baru ini (hanya file yang terbuka).


Yap, CINTA ini- gunakan setiap hari.
MaseBase

Sangat berguna jika Anda menekan F + 12 untuk pergi ke definisi dan kemudian ingin kembali ke tempat Anda berada.
Thomas Bratt

9

Saya tidak sering menggunakannya, tapi saya suka:

ctrl-alt + mouse select

Untuk memilih di blok persegi panjang, untuk 'memblokir' batas.

Seperti disebutkan dalam komentar,

alt + mouse select

Apakah hanya blok persegi panjang polos.


4
Downvote lucu, mengingat bahwa ini adalah tindakan yang valid di VS :) Namun, semoga sukses bagi Anda, pembenci misterius.
Noon Silk

2
Mungkin agak awal, tetapi membaca ini membuat saya ingin mencobanya di Firefox. Ternyata, ctrl-alt-shift memungkinkan Anda menggunakan mouse untuk menyeret seluruh dokumen di layar, mirip dengan cara kerja dokumen PDF.
KdgDev

Apa bedanya dengan alt + mouse select?
Guffa

Guffa: Ini hanya untuk memblokir akhir. alt-select memungkinkan Anda memilih area apa pun yang mengandung apa pun. Mereka berbeda.
Noon Silk

Meskipun saya pikir itu bisa saja 'ctrl-alt', bukan 'bergeser' juga.
Noon Silk


8

CTRL + Shift + U -> bagian yang disorot huruf besar. CTRL + U -> Huruf kecil bagian yang disorot Bagus untuk mendapatkan Pernyataan SQL saya terlihat tepat ketika menempatkan mereka ke dalam string query.

Juga berguna untuk kode yang Anda temukan online di mana SEMUANYA DI CAPS.


2
Sayang sekali mereka tidak memiliki opsi CamelCase CTRL + Shift ... :) Itu mungkin refactor # 1 yang saya lakukan ketika saya mengambil alih sebuah proyek ... Larry
LarryF

8

Tombol Mouse Tengah Klik pada tab editor menutup tab.


1
Saya menggunakan ini sepanjang waktu ketika saya coding karena saya mencari kode dan kemudian menutupnya ("X" untuk menutup agak jauh).
Kevin Driedger

8

Untuk menampilkan potongan data apa pun sebagai "array" n-byte, gunakan sintaks berikut di jendela QuickWatch Visual Studio:

variable, n

Misalnya, untuk melihat variabel bernama fooarray 256-byte, masukkan ekspresi berikut di jendela QuickWatch:

foo, 256

Ini sangat berguna saat melihat string yang tidak diakhiri null atau data yang hanya dapat diakses melalui pointer. Anda dapat menggunakan jendela Memori Visual Studio untuk mencapai hasil yang serupa, tetapi menggunakan jendela QuickWatch seringkali lebih nyaman untuk pemeriksaan cepat.

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.