2010-07-24 20 views

Respuesta

4

Visual Studio no tiene ninguna función que permita reordenar el código ya escrito. Ese es el dominio de los complementos. Resharper tiene una función de "Reordenar miembros de tipo", pero solo es compatible con C#, no con código VB.NET. NArrange parece ser capaz de hacer esto. Ni idea, nunca lo usé yo mismo.

+0

NArrange parece que hace lo que yo quiero, pero no tan fácil de usar. – Freshblood

9

ReSharper puede ordenar los miembros de su clase (campos, constructores, métodos, delegados) por nombre, accesibilidad, tipo, solo lectura, etc. También puede rodear miembros específicos con regiones. Lo que más me gusta es la capacidad de agrupar miembros de la interfaz (por ejemplo, #region IDisposable con el método void Dispose()) y los métodos que manejan un evento.

ReSharper proporciona ambas: una manera fácil de configurar y activar la clasificación de los miembros de la clase.

configuración

Crear un archivo XML dentro de Visual Studio y copiar y pegar la disposición miembro de tipo por defecto (Opciones ReSharper> Idiomas> C#> Tipo distribuir los miembros) en ese archivo. Descargue la última XSD schema. Agregue el archivo de esquema a los archivos de esquema de Visual Studio (Menú> XML> Esquemas ...> Agregar). Ahora debería poder editar el archivo XML con la ayuda de IntelliSense.

Activación

Si se utiliza el esquema de estudio Teclado visual (Opciones ReSharper> Integración Visual Studio) y presiona Ctrl + E, F para Código silencioso de limpieza de. Aparecerá un cuadro de diálogo en el que puede seleccionar una configuración Code Cleanup. Para esta configuración, debe marcar Reordenar miembros de tipo. La segunda vez que presione el atajo, ReSharper reordenará automáticamente los miembros de su clase.

1: ReSharper Type Members XSD Schema

+2

downvote lol: D – Matthias

+0

Mi VS parecen funcionar, pero ni siquiera puedo cambiar mi posición del cursor: | – deadManN

+0

'System.Windows.Markup.XamlParseException: 'No se puede crear un tipo desconocido '{http://www.w3.org/2001/XMLSchema}schema''. Número de línea '2' y posición de línea '2'. ---> System.Xaml.XamlObjectWriterException: 'No se puede crear un tipo desconocido' {http://www.w3.org/2001/XMLSchema}schema '.' Número de línea '2' y posición de línea '2'. en System.Xaml.XamlObjectWriter.WriteStartObject (XamlType xamlType) en System.Xaml.XamlWriter.WriteNode (lector de XamlReader) en System.Windows.Markup.WpfXamlLoader.TransformNodes (XamlReader XamlReader, XamlObjectWriter xamlWriter, Boolean onlyLoadOneNode, Boolean .. .' – deadManN

29

creo CodeMaid es la mejor opción gratuita de formato de código en Visual Studio.


Para ordenar su archivo, abra el archivo mediante el Explorador de soluciones:

  1. Haga clic derecho en el archivo abierto
  2. menú Código Limpieza (probablemente cerca de la parte superior del menú del botón derecho)
  3. Haga clic en Reorganize Active Document

O bien, utilizando las teclas predeterminadas de CodeMaid CTRL + M, Z para ordenar su archivo activo.

+1

me gusta buenas herramientas gratuitas –

+1

no funcionó como se esperaba para mí. Se agrupan propiedades sin razón, añadió espacios entre algunos de ellos y eliminado el espacio entre el comentario y la propiedad antes de eso. –

+0

Nota ... Preste atención a la sección "Actualmente compatible" ... 'Para Visual Studio 2010, la última versión compatible es v0.8.1. Para Visual Studio 2005/2008, la última versión compatible es v0.4.3. –

1

Si el Código de Clasificación es su única preocupación, puede probar la extensión de Visual Studio CodeSorter

CodeSorter es altamente extensión personalizable que permite a sus usuarios tipo de código C# itby varias condiciones tales como nombres, tipos (método , clase, estructura, ...), modificadores de visibilidad (privado, público, ...), modificadores constness (const, estática, de sólo lectura) y modificadores de virtualidad (virtual, anulación, nuevo, ...).

Es posible asignar varios criterios de búsqueda para tener la misma prioridad , por ejemplo lugar protegido primero y miembros privados, y públicos y internos.

nombres se comparan de manera que "m_" y que lleva "_" es despojado. Esto permite que los campos y las propiedades (por ejemplo, _foo y Foo) estén justo al lado entre sí.

Las declaraciones de una línea se colocan sin delimitar la línea en blanco, mientras que las declaraciones de varias líneas están separadas por una línea en blanco. La excepción es que uno forrado de campo seguido de una propiedad multi-revestido sin comentario del mismo nombre será colocado en blanco sin la línea de delimitación.

0

Otra opción que encontré es XArrange. Es gratis y se puede instalar desde Extension Manager.

Problemas que hice con él ...

  1. Pone métodos antes de constructores.
  2. Elimina cualquier comentario entre miembros, propiedades, métodos, etc.
  3. Su configuración es muy limitada. No hay forma de cambiar el orden de clasificación.

    XArrange Settings

Cuestiones relacionadas