Bagaimana cara membuat Visual Studio auto generate kawat gigi untuk fungsi blok?

Saya bisa bersumpah aku've melihat orang-orang yang mengetik fungsi header dan kemudian menekan beberapa kombinasi tombol untuk auto-membuat fungsi kawat gigi dan menyisipkan kursor di antara mereka seperti:

void foo()_

untuk

void foo()
{
    _
}

Ini fitur built-in?

Alat-alat yang terlihat bagus (terutama Resharper tetapi pada $200-350 ouch!) tapi akhirnya aku hanya merekam makro dan menetapkan ctrl+alt+[

Makro keluar seperti ini:

Sub FunctionBraces()
    DTE.ActiveDocument.Selection.NewLine
    DTE.ActiveDocument.Selection.Text = "{}"
    DTE.ActiveDocument.Selection.CharLeft
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.LineUp
    DTE.ActiveDocument.Selection.Indent
End Sub

Edit: saya menggunakan macro recorder untuk membuat ini dan itu't terlalu buruk

Komentar (0)
Larutan

Check out Resharper - itu adalah Visual Studio add-on dengan fitur ini, di antara banyak pembangunan lain yang membantu.

Lihat juga C# Pelengkap, add-on lain.

Jika anda ingin roll anda sendiri, memeriksa artikel ini. Gila yang satu harus melakukan itu, meskipun.

Komentar (0)

Hal ini dapat dicapai dengan menggunakan potongan kode, beberapa sudah dibangun di (coba ketik "svm" dan memukul TAB-TAB)..

Ada's juga menawarkan info di net menciptakan ini:

Jeff melakukan posting sendiri di sini

Memiliki google! Saya menggunakan mereka BANYAK! :D

Komentar (0)

Lihatlah visual membantu juga.

Komentar (0)

Aku baru saja dibuat yang didasarkan pada @Luke's atas. Yang satu ini, anda hanya ingin tekan Enter kemudian tekan kombinasi tombol dan itu akan memasukkan:

if ()
{

}
else
{

}

Dan itu akan menempatkan kursor di dalam kurung dengan pernyataan if.

Sub IfStatement()
    DTE.ActiveDocument.Selection.Text = "if ()"
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.Text = "{"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "}"
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.Text = "else"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "{"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "}"
    DTE.ActiveDocument.Selection.LineUp(False, 7)
    DTE.ActiveDocument.Selection.EndOfLine()
    DTE.ActiveDocument.Selection.CharLeft(3)
End Sub
Komentar (0)