¿Cómo puedo hacer que Visual Studio auto generar apoyos para un bloque de función?

StackOverflow https://stackoverflow.com/questions/9486

  •  08-06-2019
  •  | 
  •  

Pregunta

Podría jurar que he visto a la gente a escribir la función de encabezados y después de golpear a algunos combinación de teclas para auto-crear la función de los apoyos y inserte el cursor entre ellos, así:

void foo()_

a

void foo()
{
    _
}

Es esta una característica integrada?

¿Fue útil?

Solución

Echa un vistazo Resharper - es un complemento de Visual Studio con esta característica, entre muchos otros de desarrollo de la ayuda.

Ver también C# Integrador, otro add-on.

Si quieres lanzar tu propio, echa un vistazo este artículo.Loco que uno debe tener para hacer eso, sin embargo.

Otros consejos

Las herramientas se ven bien (especialmente Resharper pero en $200 y los 350 ouch!) pero terminé la grabación de una macro y de asignar a las teclas ctrl+alt+[

Macro salió como este:

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

Editar:He utilizado la grabadora de macros para hacer esto y no estaba muy mal

Esto puede ser logrado mediante el uso de fragmentos de código, algunos ya están integrados (intente escribir "svm" y golpear TAB-TAB)..

Hay una gran cantidad de información en la red sobre la creación de estos:

Jeff hice un post aquí mismo

Tiene un google!Yo los uso un MONTÓN!:D

Echa un vistazo a visual ayudar así.

Acabo de crear uno basado en @Lucas arriba.Esta, quieres darle a Enter, luego de golpear su combinación de teclas y se va a insertar:

if ()
{

}
else
{

}

Y pondrá el cursor en el paréntesis por la instrucción 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
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top