Comment désactiver définitivement le pliage de région dans Visual Studio 2008

106

Quelqu'un sait comment désactiver le pliage de code dans Visual Studio 2008? Certains de mes collègues adorent cela, mais personnellement, je veux toujours voir tout le code et ne jamais vouloir que le code soit caché. J'aimerais un paramètre qui signifie que ma copie de Visual Studio ne se replie jamais #regionsou ne fonctionne jamais .

Steve Cooper
la source
10
Totalement mal interprété cela comme des caresses régionales. Ma faute.
Jeff Yates
12
Caresser vos régions est déjà interdit dans mon bureau;)
Steve Cooper
Terrible question à poser. Lorsque vous devenez un expert dans un p. langue vous devez aimer le code pliant dans vos fichiers.
Bitterblue
7
Non, c'est une question de style, pas une question d'expertise. Je n'aime pas les cours et les fonctions vraiment longs; le pliage de code vous aide à gérer le code qui devient trop long. Les fichiers de plus de 150 à 200 lignes m'avertissent que la classe est prête à être refactorisée.
Steve Cooper

Réponses:

138

Edit: je recommande cette autre réponse

Allez dans le menu Outils-> Options. Accédez à l'éditeur de texte-> C # -> Avancé. Décochez "Passer en mode aperçu à l'ouverture des fichiers".

Cela désactivera tous les contours, y compris les régions, pour tous les fichiers de code c #.

Greg
la source
11
Cependant, décocher cette option désactive complètement le contour. Existe-t-il un autre paramètre quelque part qui affichera simplement toutes les régions du code développé lors de l'ouverture d'un fichier?
Dirk Vollmar
Je pense que vous devez utiliser des macros pour faire cela, mais je ne connais pas le code pour y parvenir.
Greg
1
Le plus ennuyeux "long métrage"
Christian Kuetbach
Emplacement de l'option déplacé dans VS 2013 : Éditeur de texte -> C # -> Affichage, blocs d'instructions de plan.
idbrii
Quelqu'un peut-il expliquer ce qu'est le mode de présentation PLEASE?
Colonel Panic le
56

La réponse acceptée désactive TOUT le pliage de code. Si vous voulez désactiver le pliage #region mais réduire les commentaires, les boucles, les méthodes, etc., j'ai écrit un plugin qui le fait pour vous.

Faites que les # régions sucent moins (gratuitement):

http://visualstudiogallery.msdn.microsoft.com/0ca60d35-1e02-43b7-bf59-ac7deb9afbca

  • Développer automatiquement les régions lorsqu'un fichier est ouvert
  • Éventuellement empêcher les régions d'être réduites (mais être toujours en mesure de réduire un autre code)
  • Donnez aux lignes de région #region / #end un arrière-plan plus petit et plus clair pour qu'elles soient moins visibles (également une option)
  • Fonctionne en C # et VB (mais uniquement dans VS 2010/2012, non pris en charge pour 2008)

Capture d'écran de l'outil de région

NotDan
la source
11
Merci pour cela, cela semble être une approche meilleure et plus douce, plutôt que de simplement désactiver tous les contours.
Vivelin
1
Génial! Je suis content que tu l'aimes.
NotDan
Des plans pour une version VS 2013? La source est-elle disponible? Je suis sûr que quelqu'un serait prêt à ajouter le support 2013.
Chuck Conway
4
En espérant VS 2017.
Nick Painter
10

Vous pouvez également désactiver le wrapping de région sur le code généré (comme lorsque vous utilisez le raccourci Visual Studio pour implémenter automatiquement une interface).

texte alternatif http://dusda.com/files/regionssuck.png

Dusda
la source
J'ai trouvé cela dans Outils> Options> Éditeur de texte> C #> Avancé> Implémenter l'interface . Décochez le code généré Surround avec #region . Merci encore.
écraser
9

Options / Éditeur de texte / C # / Avancé / Entrer en mode plan à l'ouverture des fichiers

MarcE
la source
8

Ce n'est pas permanent, mais les touches Ctrl-M Ctrl-L développent les régions d'un fichier

Lou Franco
la source
4

En outre, un moyen rapide de basculer entre développer / réduire toutes les régions est: CTRL + M + L

Jules
la source
2

J'ai publié une réponse dans un fil de discussion lié mais pas en double qui peut aider certaines personnes ici. J'ai détaillé comment créer des macros qui désactiveront les #regions d'une seule unité en commentant les directives #region et #endregion, avec un compagnon pour les réactiver. Avec les #régions désactivées, la fonction Ctrl + M + O / Réduire aux définitions fait exactement ce que je veux. J'espère que cela sera utile pour quelqu'un hors de moi.

Raccourci pour réduire aux définitions à l'exception des régions

JMD
la source
1

Cette option semble être disponible uniquement en C # et non en C / C ++ (Visual Studio 2005). Pour désactiver le contour dans les fichiers C / C ++, vous devez faire une astuce en changeant la couleur du contour en couleur d'arrière-plan de l'éditeur. Pour ce faire, allez dans Outils> Options> Environnement> Polices et couleurs> Texte réductible> Changez la couleur "Premier plan de l'élément" en Blanc (ou quelle que soit la couleur de votre arrière-plan).

Czarek Tomczak
la source
Ce! C'est ce que je cherchais! J'apprécie vraiment cet aperçu d'une «fonctionnalité» ennuyeuse que je cherche à tuer depuis des mois (voire des années)!
jerhewet
@jerhewet en utilisant cette solution, vous pourriez avoir des problèmes si vous cliquez sur cette zone blanche par erreur et que la région se plie, puis pour la déplier, vous devez viser, cliquez sur une zone invisible.
Czarek Tomczak
0

J'ai résolu le problème pour moi avec un événement environnemental:

  1. démarrer le macro-éditeur (alt + f11)
  2. ouvrir macroprojet / EnvironmentEvents
  3. collez le code suivant:

    Private Sub DocumentEvents_DocumentOpened(ByVal Document As EnvDTE.Document) Handles DocumentEvents.DocumentOpened
        If (Not Document Is Nothing) Then
            If (Document.FullName.ToLower().EndsWith(".cs")) Then
                Try
                    DTE.ExecuteCommand("Edit.ExpandAllOutlining")
                Catch ex As Exception
                End Try
            End If
        End If
    End Sub

    Private Sub WindowEvents_WindowActivated(ByVal GotFocus As EnvDTE.Window, ByVal LostFocus As EnvDTE.Window) Handles WindowEvents.WindowActivated
        If (Not GotFocus Is Nothing) Then
            If (Not GotFocus.Document Is Nothing) Then
                If (GotFocus.Document.FullName.ToLower().EndsWith(".cs")) Then
                    Try
                        DTE.ExecuteCommand("Edit.ExpandAllOutlining")
                    Catch ex As Exception
                    End Try
                End If
            End If
        End If
    End Sub

Salutations Tobi

xks
la source