Cum fac Visual Studio auto genera brațele pentru un bloc de funcții?

Am putea să jur că am văzut pe oameni tastând anteturi de funcții și apoi lovind o combinație de taste pentru a crea aulamat bretele de funcții și introduceți cursorul între ele așa cum este:

void foo()_

la

void foo()
{
    _
}

Este o caracteristică încorporată?

0
fr hi bn

5 răspunsuri

Instrumentele arată frumos (mai ales Resharper, dar la 200-350 $!), Dar am ajuns să înregistrez o macrocomandă și să o atribuie ctrl + alt + [

Macro-ul a ieșit astfel:

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

Modificați: am folosit înregistrarea macro pentru a face acest lucru și nu a fost prea rău

0
adăugat

Check out Resharper - este un add-on pentru Visual Studio cu această caracteristică, printre multe alte ajutoare de dezvoltare.

De asemenea, a se vedea C# Completer , un alt add-on.

Dacă doriți să vă răsturnați, consultați acest articol . Insane că trebuie să faci asta, totuși.

0
adăugat

Se poate realiza utilizând fragmente de cod, unele sunt deja construite (încercați tastând "svm" și apăsând TAB-TAB).

Există o mulțime de informații pe internet despre crearea acestora:

Jeff a făcut un post însuși aici

Aveți un Google! Le folosesc multe! : D

0
adăugat

Aruncați o privire la asistență vizuală , de asemenea.

0
adăugat

Tocmai am creat unul bazat pe @ lui Luke de mai sus. Aceasta, pe care doriți să o apăsați Enter, apăsați pe combinația de taste și se va introduce:

if ()
{

}
else
{

}

Și vă va pune cursorul în paranteză prin instrucțiunea 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
0
adăugat