Instruction Visual Studio C # se réduisant

Lorsque vous éditez des blocs de code très longs (qui doivent absolument être restructurés de toute façon, mais cela dépasse le cadre de cette question), j’ai souvent envie de pouvoir réduire des blocs d’instructions comme on peut réduire des blocs de fonctions. C’est-à-dire que ce serait bien si l’icône moins apparaissait sur le contour du code pour tout ce qui était entre accolades. Il semble apparaître pour les fonctions, les classes, les régions, les espaces de nommage, les utilisations, mais pas pour les blocs conditionnels ou itératifs. Ce serait fantastique si je pouvais effondrer des choses comme les ifs, les switchs, les foreaches, ce genre de choses!

Googling dans un peu, j’ai découvert qu’apparemment C ++ soulignant dans VS permet cela, mais C # exposant dans VS ne le fait pas. Je ne comprends pas vraiment pourquoi. Même notepad ++ va s’effondrer si je sélectionne le formatage C #, donc je ne comprends pas pourquoi Visual Studio ne fonctionne pas.

Est-ce que quelqu’un connaît un complément VS2008 qui activera ce comportement? Ou une sorte de cadre caché pour cela?

Édité pour append: l’insertion de régions est bien sûr une option et cela m’est déjà arrivé, mais franchement, je ne devrais pas avoir à emballer des choses dans une région déjà entourée d’accolades … si je devais éditer le code existant, je voudrais juste le refacturer pour avoir une meilleure séparation des préoccupations de toute façon. (“envelopper” avec de nouvelles méthodes au lieu de régions;)

À partir de Visual Studio 2017, la réduction des instructions est intégrée.

Plusieurs extensions effectuent cette tâche pour les versions antérieures à 2017 de VS, à partir de la version de VS 2010:

  • Contour C #
  • C # outline 2012 (@MSDN)
  • C # outline 2013 (@MSDN)
  • C # outline 2015 (@MSDN)
  • Visual Basic et C # Outliner

La dernière extension ne prend en charge que VS 2015 et VS 2017, mais c’est la plus puissante.
Il prend en charge la coloration syntaxique dans les blocs réduits, il est plus tolérant aux pannes et optimisé.

Si l’extension ne semble pas s’installer après avoir utilisé un navigateur pour le télécharger, essayez d’utiliser le gestionnaire d’extension Visual Studio intégré.

Je ne suis pas au courant des compléments, mais vous avez mentionné des régions et je ne vois rien de mal à faire quelque chose comme ça …

 foreach (Item i in Items) { #region something big happening here ... #endregion #region something big happening here too ... #endregion #region something big happening here also ... #endregion } 

EDIT: En réponse à l’EDIT de la question: vous avez raison, coller un tas de régions partout n’est pas idéal et le refactoring est probablement la voie à suivre. Mais il semble que vous cherchiez quelque chose de magique qui “organisera” le code pour vous, et je ne pense pas que cela existe.

Vous pouvez réduire des blocs de texte spécifiques dans Visual Studio, mais vous devez désactiver la définition automatique des contours.

Faites un clic droit dans votre fenêtre de code et sélectionnez (Contour | Arrêter la structure)

Ensuite, sélectionnez du texte, cliquez avec le bouton droit de la souris et sélectionnez (Contour | Masquer la sélection)

Lorsque vous activez à nouveau la mise en page automatique, vos “régions” personnalisées ne seront plus réduites.

Visual Studio 2008 prend en charge les régions à l’intérieur des fonctions tant que vous les conservez au même niveau hiérarchique de code

 #region Won't work for(int i = 0; i 

Cette fonctionnalité a été ajoutée à l’éditeur C # de Visual Studio 2010. Je ne trouve pas la source qui vérifie qu’elle a été installée, mais je me souviens de l’avoir vue sur l’un des blogs des membres de l’équipe de Dev 10, qui parlaient des changements depuis la version bêta 1 ou quelque chose du genre. En guise de consolation, voici un commentaire de Microsoft qui suggère de vouloir l’append.

Permettez-moi de dire quelque chose de différent: appuyez sur (ctrl+m,ctrl+h) ou dans Édition> Contour> Masquer la sélection c’est si utile.

J’appendai ici que dans VS 2010, Microsoft a ajouté les fonctionnalités d’adorateur WPF à l’aide de MEF (Managed Extensibility Framework), ce qui nous permettra d’étendre l’éditeur de code source afin de le rendre plus lisible et accessible.

Par exemple, le visualiseur de résumé des commentaires que Scott Gu a présenté à PDC 2008 .

Alors attendez-vous à un meilleur demain pour les développeurs 🙂

Coderush décrira tous les blocs de code pour vous. Vous ne savez pas si cela vous permet d’agrandir / réduire les blocs, mais la meilleure chose à faire est de les décrire. J’utilise resharper au lieu de coderush qui, pour autant que je sache, ne permet pas non plus de réduire le bloc 🙁

Je l’ai trouvé pour Visual Studio 2013 et je l’ai trouvé très utile. Cela fonctionne même si vous mettez des accolades simples autour de votre code avec {…..}

Après le partage, j’ai trouvé quelqu’un d’autre a également mentionné ce lien. Mon vote concerne également cet outil.

Outil de présentation C # pour Visual Studio 2013

Dans VS2017, vous pouvez mettre en surbrillance une section de code, cliquer avec le bouton droit de la souris sur Contexte> Masquer la sélection. Cela réduira le code et fournira une bascule à la section en surbrillance.

# region, # endregion est l’option intelligente.