Visual Studio: Existe uma maneira de recolher todos os itens do Solution Explorer?

146

Sei que posso usar as teclas de seta para recolher itens do Solution Explorer um por um, mas gostaria de saber se existe uma maneira de recolher todos os itens com apenas uma operação. Quero conhecê-lo, porque hoje tenho uma solução com 6 projetos que têm pelo menos duzentos arquivos e, se eu tentar recolhê-los um por um, terei dificuldades.

Exibição em árvore - Solution Explorer (Visual Studio)

Cleiton
fonte
21
FYI, * é a expandir-all-chave (Isso não responder à pergunta, mas está relacionado.)
Sprague
NOTA: incorporado ao VS 2012 e 2013 - leia para detalhes
Andy
1
@Sprague * funciona apenas com a tecla dedicada no teclado numérico. Como você expande tudo, na ausência de um teclado numérico?
Marco Lackovic
@ Marco Lackovic (resposta tardia) Minha melhor aposta é procurar "expandall" em Ferramenta> Opção> Ambiente> Teclado e definir uma tecla de atalho. (não testar)
javaLover

Respostas:

183

Parece estar embutido por padrão no Visual Studio 2013 em diante.

Gerenciador de Soluções> Reduzir

Sebastian Patten
fonte
13
Existe um atalho de tecla de atalho para isso?
precisa saber é o seguinte
7
@RayLoveless não, mas você pode definir um em Ferramentas -> Opções -> Ambiente -> Teclado
Adam Short
6
@AdamShort eu achei conveniente para a ação Assign "Reduzir tudo" para "Num /" chave, faz um bom jogo para o "Num *" (Expandir Tudo)
Varvara Kalinina
@VarvaraKalinina Como você fez isso? SolutionExplorer.CollapseAllsó aceitará CTRL + alguma coisa, tentando usar apenas `` não faz nada para mim
Noctis
24

Se você possui o ReSharper instalado, pode clicar com o botão direito do mouse na solução no gerenciador de soluções e selecionar "Recolher tudo".

Pete
fonte
Obrigado Pete! Também não sabia que o re-afiador fazia isso. Especialmente depois de pressionar "*" por acidente.
Joisey Mike 12/07
1
Solicitar esclarecimentos ou sugerir melhorias. Usando resharper - qual é o comando / atalho?
Mars Robertson
21

Você pode usar o PowerCommands for Visual Studio 2008

Clique com o botão direito do mouse no projeto \ solução no gerenciador de soluções e escolha Recolher projeto:

HuBeZa
fonte
1
amo comandos de poder, exceto a janela "desfazer fechamento" que não morre.
31410 Muad'Dib
Tentei usá-lo, mas depois que ele foi instalado na minha máquina, meu vs2008 parou de funcionar. LOL
Cleiton
@ Chris: Eu nunca tentei (na verdade, uso a janela de desfazer fechamento), mas em Tools \ Options \ PowerCommands \ Commands você pode desativar qualquer recurso que desejar.
HuBeZa
Infelizmente, os PowerCommands tendem a quebrar o designer do WPF.
21713 Ryan Lundy
1
Não poder Comandos não entrar em colapso pastas de solução quer e, em vez expande-los aleatoriamente
Mario
14

Basta usar as teclas Mais e Menos do teclado numérico no nó de nível superior, para expandir e recolher respectivamente (Nota: também expande a lista inteira). + - *

Para a caixa de ferramentas, você precisa usar * e, em / vez disso, expandir / recolher. Vai saber.

AL.
fonte
3
Infelizmente, isso apenas recolhe / expande o nó atual (assim como clicar no ícone expandir / recolher), não filhos, o que não acho que seja uma solução para o OP: por exemplo, se você tiver 3 projetos, cada um com 2 pastas , cada um com 10 pastas. Recolher a solução como um todo é ótimo, mas quando você a expande novamente, você volta a uma lista de 60 itens, em vez de uma lista de três projetos.
Daved
2
Num pad * expande todas as crianças (VS 2013)
Sel
9

Como você pode ver na imagem abaixo, há uma opção chamada Recolher tudo e uma tecla de atalho ao lado.

Solution Explorer> Reaharper> Reduzir

Agora, essa tecla de atalho não funcionará para você! A menos que você configure usando Tools > Options > Keyboard.

O nome do comando é ReSharper_CollapseInSolutionExplorer.

Pesquise usando este nome de comando e atribua uma tecla de atalho de sua escolha.

Opções> Teclado> ReSharper_CollapseInSolutionExplorer

e agora você tem uma tecla de atalho pronta para usar para recolher todos os itens no seu Solution Explorer.

Eu sei que estou um pouco atrasado para esta discussão, mas isso certamente vai ajudar alguém.

Yasser Shaikh
fonte
5
Deve-se mencionar que essa não é a funcionalidade padrão do VS (anterior a 2012), mas, nesse caso, o item e o atalho adicionais do menu de contexto são fornecidos pelo Resharper.
precisa saber é o seguinte
No VS2015 com ReSharper 2016.1, isso agora é apenas CollapseInSolutionExplorer.
absynce 2/06/16
4

A extensão do VisualStudio CodeMaid fornece recolhimento .

Faça o download no VisualStudioGallery.

A versão atual suporta apenas o VS2010 ou superior, mas você pode instalar versões mais antigas lado a lado.

Em1
fonte
3

Usando o Visual Studio 2017 e superior

use atalho

  • Abra Ferramentas > Opções ou pressione Alt+ T+O
  • Na guia Ambiente > Teclado (também é possível criar um atalho para o Tools.CustomizeKeyboard para abri-lo diretamente )

Para recolher tudo

  • Procure por " SolutionExplorer.CollapseAll "
  • Adicionar um novo atalho por exemplo Ctrl+ Left Arrow, Ctrl+Left Arrow

Para expandir tudo

  • Procure por " SolutionExplorer.Folder.CollapseAll "
  • Adicionar um novo atalho por exemplo Ctrl+ Right Arrow, Ctrl+Right Arrow

    insira a descrição da imagem aqui

  • Atribuir > OK

Anas Alweish
fonte
2

O Visual Studio 2012 foi lançado em 15/8/2012, por isso sugiro que atualize para obter um botão rápido da barra de ferramentas "Recolher tudo", anteriormente disponível apenas no Solution Navigator da Productivity Power Tools, que às vezes era muito lento para ser usado.

Patrick Szalapski
fonte
1

No VS 2019, basta clicar em Recolher tudo

insira a descrição da imagem aqui

Alan Simpson
fonte
0

Use a extensão do Visual Studio adequada à sua versão do Visual Studio. No meu caso (uso o Visual Studio 2012), uso a extensão Productivity Power Tools , mas infelizmente isso existe apenas para o VS 2010 e posterior ... Para o VS 2008, há uma extensão semelhante: Power Commands .

Sarja
fonte
Você pode elaborar mais, por favor?
Rahul Patel
Vá para Ferramentas => Extensões no Visual Studio e instale os suplementos especificados para ter a funcionalidade desejada.
Serge
-3

Excluir o *.suoe *.csproj.userarquivos, e reabrir as soluções / projetos.

Cecil tem um nome
fonte
Quais preferências? Os projetos ainda compilarão o mesmo.
Cecil tem um nome
2
Ele será compilado, mas você perderá as guias abertas no momento, os projetos de inicialização (dolorosos se você tiver várias) e outras configurações por usuário.
22412 Dav