ti-enxame.com

Agrupar arquivos no Visual Studio

Estou procurando arrumar o layout do meu projeto no Visual Studio e me pergunto se existe algum hack, plugin ou truque para associar um arquivo .xml a um arquivo .cs com o mesmo nome eles aparecem agrupados no meu navegador de soluções/Explorer.

Semelhante à maneira como o arquivo code-behind está associado ao seu aspx.

alt text

Todas as sugestões são bem-vindas. obrigado

74
mat-mcloughlin

No seu arquivo de projeto:

<Compile Include="FileA.cs"/>
<Compile Include="FileA.xml">
  <DependentUpon>FileA.cs</DependentUpon>
</Compile>

Ou você pode usar Group Items comando de VSCommands 201 extensão.

Editar: caso seu arquivo esteja em uma pasta, não inclua o nome da pasta na tag DependentUpon. Por exemplo, se o seu arquivo estiver na pasta Helpers:

<Compile Include="Helpers\FileA.cs"/>
<Compile Include="Helpers\FileA.xml">
  <DependentUpon>FileA.cs</DependentUpon>
</Compile>
70
Julien Hoarau

Se você não quiser desacelerar, IDE com a extensão VSCommands pesada e proprietária, você pode usar uma pequena extensão NestIn . Em vez disso, ela não pode agrupar/desagrupar arquivos

57
Dao

Para o caso simples em que o arquivo é um arquivo de "nível superior", a descrição de Julien funciona perfeitamente. No entanto, no caso em que o arquivo DependentUpon está em uma Pasta no projeto, isso parece diferente. Eu pessoalmente não gosto disso, porque parece que isso pode levar à ambiguidade, mas isso é uma opinião.

<Compile Include="DataStructs\CKDTree.cs" />
<Compile Include="DataStructs\CClosestObjects.cs" >
    <DependentUpon>CKDTree.cs</DependentUpon>
</Compile>

Observe que o item dependente NÃO inclui a pasta do pai. Isso é verdade no VS2013 ... provavelmente verdadeiro nas versões anteriores, mas eu não o verifiquei.

2
Veldaeven

Não tenho certeza se as pessoas estão cientes, mas o aninhamento de arquivos como esse aparentemente interrompe a capacidade do VS de renomear o arquivo raiz, pelo menos quando seu novo arquivo aninhado também é uma classe parcial. Por exemplo, aqui está a árvore que criamos ...

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

MainWindow.Commands.cs é apenas outra classe parcial de MainWindow, igual a MainWindow.xaml.cs. No entanto, se você tentar renomear MainWindow.xaml, em vez de renomear automaticamente os arquivos dependentes, ele emitirá uma exceção.

Para completar, também tentei nomear o arquivo MainWindow.xaml.Commands.cs mas isso também não funcionou.

Sem o arquivo 'comandos' extra, renomear funciona bem, é claro.

MainWindow.xaml
    MainWindow.xaml.cs

Enfim, isso foi motivo suficiente para abandonarmos os arquivos de aninhamento como este. Sem a capacidade de renomear, simplesmente não vale a pena.

0
MarqueIV

Aninhamento de arquivos a extensão para o visual studio é boa. Possui cerca de 500 mil downloads no momento em que escrevemos esta resposta. Eu o adicionei pessoalmente ao meu VS 2015 e estava funcionando bem (ainda não o testei com o VS 2017).

0
Tohid