Archivos de grupo en Visual Studio

Estoy buscando arreglar el diseño de mi proyecto en Visual Studio y me pregunto si hay algún hack, plugin o truco para asociar un archivo .xml con un archivo .cs del mismo nombre para que aparezcan agrupados en mi navegador de soluciones /explorador.

Similar a la forma en que el archivo de código subyacente está asociado con su aspx.

texto alternativo

Cualquier sugerencia bienvenida Gracias

En tu archivo de proyecto:

  FileA.cs  

O puede usar el comando de elementos de grupo de la extensión VSCommands 2010 .

Editar: solo en caso de que su archivo esté en una carpeta, no incluya el nombre de la carpeta en la etiqueta DependentUpon . Por ejemplo, si su archivo está en la carpeta Helpers :

   FileA.cs  

Si no desea ralentizar su IDE con la extensión VSCommands pesada y patentada, puede usar la pequeña extensión NestIn en su lugar. No puede más que agrupar / desagrupar archivos

Para el caso simple en que el archivo es un archivo de “nivel superior”, la descripción de Julien funciona perfectamente. Sin embargo, en el caso donde el archivo DependentUpon está en una Carpeta bajo el proyecto, esto se ve diferente. Personalmente, no me gusta porque parece que podría generar ambigüedad, pero esa es una opinión.

   CKDTree.cs  

Tenga en cuenta que el elemento dependiente NO incluye la carpeta del padre. Esto es cierto en VS2013 … probablemente sea cierto en versiones anteriores, pero no lo he verificado.

No estoy seguro de si las personas lo saben, pero anidar archivos como este aparentemente rompe la capacidad de VS de cambiar el nombre del archivo raíz, al menos cuando su nuevo archivo nested es también una clase parcial. Por ejemplo, aquí está el árbol que creamos …

 MainWindow.xaml MainWindow.xaml.cs MainWindow.Commands.cs 

MainWindow.Commands.cs es simplemente otra clase parcial de MainWindow, igual que MainWindow.xaml.cs. Sin embargo, si intenta cambiar el nombre de MainWindow.xaml, en lugar de cambiar automáticamente el nombre de los archivos dependientes, arroja una excepción.

Para completar, también traté de nombrar el archivo MainWindow.xaml.Commands.cs pero tampoco funcionó.

Sin el archivo extra de ‘comandos’, cambiar el nombre funciona bien, por supuesto.

 MainWindow.xaml MainWindow.xaml.cs 

De todos modos, esto fue motivo suficiente para que abandonáramos los archivos de anidación como este. Sin la capacidad de cambiar el nombre, simplemente no vale la pena.

La extensión File Nesting para visual studio es buena. Tiene aproximadamente 500K descargas en el momento de escribir esta respuesta. Lo agregué personalmente a mi VS 2015 y funcionó bien (aún no lo he probado con VS 2017).