So deaktivieren Sie die Bereichsfaltung in Visual Studio 2008 dauerhaft

106

Weiß jemand, wie man das Falten von Code in Visual Studio 2008 deaktiviert? Einige meiner Kollegen lieben es, aber ich persönlich möchte immer den gesamten Code sehen und möchte nie, dass der Code außer Sichtweite gefaltet wird. Ich möchte eine Einstellung, die bedeutet, dass meine Kopie von Visual Studio niemals faltet #regionsoder Körper funktioniert.

Steve Cooper
quelle
10
Völlig falsch verstanden als Region-Streicheln. Mein Fehler.
Jeff Yates
12
Das Streicheln Ihrer Regionen ist in meinem Büro bereits verboten;)
Steve Cooper
Schreckliche Frage zu stellen. Wenn Sie ein Experte in einem p werden. Sprache, die Sie lieben müssen Code falten in Ihren Dateien.
Bitterblue
7
Nein, es ist eine Stilfrage, keine Fachfrage. Ich mag keine wirklich langen Klassen und Funktionen; Durch das Falten von Code können Sie zu langen Code verwalten. Dateien mit mehr als 150-200 Zeilen warnen mich, dass die Klasse für das Refactoring bereit ist.
Steve Cooper

Antworten:

138

Bearbeiten: Ich empfehle diese andere Antwort

Gehen Sie zum Menü Extras-> Optionen. Gehen Sie zu Texteditor-> C # -> Erweitert. Deaktivieren Sie "Beim Öffnen von Dateien in den Gliederungsmodus wechseln".

Dadurch werden alle Gliederungen, einschließlich Regionen, für alle C # -Code-Dateien deaktiviert.

Greg
quelle
11
Durch Deaktivieren dieser Option wird die Gliederung jedoch vollständig deaktiviert. Gibt es irgendwo eine andere Einstellung, die nur alle Bereiche im Code anzeigt, die beim Öffnen einer Datei erweitert werden?
Dirk Vollmar
Ich denke, Sie müssen Makros verwenden, um das zu tun, aber ich kenne den Code nicht, um dies zu erreichen.
Greg
1
Das nervigste "Feature"
Christian Kuetbach
In VS 2013 verschobener Optionsspeicherort : Texteditor -> C # -> Ansicht, Gliederungsanweisungsblöcke.
idbrii
Kann jemand erklären, welcher Gliederungsmodus BITTE ist?
Colonel Panic
56

Die akzeptierte Antwort deaktiviert das Falten von ALLEN Codes. Wenn Sie die # Regionsfaltung deaktivieren möchten, aber Kommentare, Schleifen, Methoden usw. reduzieren möchten, habe ich ein Plugin geschrieben, das dies für Sie erledigt.

Lass #regions weniger saugen (kostenlos):

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

  • Bereiche automatisch erweitern, wenn eine Datei geöffnet wird
  • Verhindern Sie optional, dass Regionen reduziert werden (aber Sie können trotzdem anderen Code reduzieren).
  • Geben Sie den Linien #region / #end region einen kleineren, helleren Hintergrund, damit sie weniger auffallen (auch eine Option).
  • Funktioniert in C # und VB (jedoch nur in VS 2010/2012, für 2008 nicht unterstützt)

Screenshot des Regionswerkzeugs

NotDan
quelle
11
Vielen Dank dafür, dies scheint ein besserer und sanfterer Ansatz zu sein, als nur alle Umrisse zu deaktivieren.
Vivelin
1
Toll! Ich freu mich, dass es dir gefällt.
NotDan
Pläne für eine VS 2013-Version? Ist die Quelle verfügbar? Ich bin sicher, jemand wäre bereit, 2013 Unterstützung hinzuzufügen.
Chuck Conway
4
Ich hoffe auf VS 2017.
Nick Painter
10

Sie können den Regionsumbruch für generierten Code auch deaktivieren (z. B. wenn Sie die Visual Studio-Verknüpfung zum automatischen Implementieren einer Schnittstelle verwenden).

Alternativtext http://dusda.com/files/regionssuck.png

Dusda
quelle
Ich fand dies unter Extras> Optionen> Texteditor> C #> Erweitert> Benutzeroberfläche implementieren . Deaktivieren Sie Surround generierten Code mit #region . Danke noch einmal.
Crush
9

Optionen / Texteditor / C # / Erweitert / Beim Öffnen von Dateien in den Gliederungsmodus wechseln

MarcE
quelle
8

Es ist nicht permanent, aber die Tastenanschläge Strg-M Strg-L erweitern die Regionen in einer Datei

Lou Franco
quelle
4

Ein schneller Weg, um das Erweitern / Reduzieren aller Regionen umzuschalten, ist: STRG + M + L.

Jules
quelle
2

Ich habe eine Antwort in einem verwandten, aber nicht doppelten Thread gepostet, der einigen Leuten hier helfen kann. Ich habe detailliert beschrieben, wie Makros erstellt werden, mit denen die # Regionen einer einzelnen Einheit deaktiviert werden, indem die Direktiven #region und #endregion mit einem Begleiter zum Reaktivieren auskommentiert werden. Wenn #regions deaktiviert ist, macht die Funktion Strg + M + O / Auf Definitionen reduzieren genau das, was ich möchte. Ich hoffe, das ist nützlich für jemanden außer mir.

Verknüpfung zum Reduzieren auf Definitionen mit Ausnahme von Regionen

JMD
quelle
1

Diese Option scheint nur in C # und nicht in C / C ++ (Visual Studio 2005) verfügbar zu sein. Um die Gliederung in C / C ++ - Dateien zu deaktivieren, müssen Sie einen Trick ausführen, indem Sie die Gliederungsfarbe in die Hintergrundfarbe des Editors ändern. Gehen Sie dazu zu Extras> Optionen> Umgebung> Schriftarten und Farben> Faltbarer Text> Ändern Sie die Farbe "Elementvordergrund" in Weiß (oder eine beliebige Hintergrundfarbe).

Zarek Tomczak
quelle
Dies! Das habe ich gesucht! Schätzen Sie wirklich diesen Einblick in ein nerviges "Feature", das ich seit Monaten (wenn nicht Jahren) töten wollte!
jerhewet
@jerhewet Wenn Sie diese Lösung verwenden, können Probleme auftreten, wenn Sie versehentlich auf diesen weißen Bereich klicken und die Region faltet. Um ihn zu entfalten, müssen Sie auf einen unsichtbaren Bereich klicken.
Czarek Tomczak
0

Ich habe das Problem für mich mit einem Umgebungsereignis gelöst:

  1. Makroeditor starten (alt + f11)
  2. Öffnen Sie das Makroprojekt / EnvironmentEvents
  3. Fügen Sie den folgenden Code ein:

    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

Grüße Tobi

xks
quelle