it-swarm.com.de

Visual Studio-Tastaturbefehle zum Erweitern / Reduzieren

Wenn in Visual Studio eine Codedatei geöffnet ist, kann ich drücken CTRL + M oder CTRL + M + O alle Codeblöcke, Regionen, Namespaces usw. reduzieren.

Wie kann ich das Gegenteil tun und alles erweitern?

Ich habe dies gegoogelt, kann aber anscheinend keine Verknüpfung finden, die funktioniert!

179
series0ne

Auf Definitionen reduzieren

CTRL + MO

Alle Gliederungen einblenden

CTRL + MX

Alles erweitern oder reduzieren

CTRL + ML

Dies funktioniert auch mit anderen Sprachen wie TypeScript und JavaScript

311
series0ne

Wie Sie sehen, gibt es mehrere Möglichkeiten, dies zu erreichen.

Ich persönlich benutze:

Alle erweitern: CTRL + M + L

Alles schließen: CTRL + M + O

Bonus:

Einblenden/Ausblenden an der Cursorposition: CTRL + M + M

122
Sirar Salih

Visual Studio 2015:

Tools > Options > Settings > Environment > Keyboard

Standardeinstellungen:

Edit.CollapsetoDefinitions: CTRL + M + O

Edit.CollapseCurrentRegion: CTRL + M +CTRL + S

Edit.ExpandAllOutlining: CTRL + M + CTRL + X

Edit.ExpandCurrentRegion: CTRL + M + CTRL + E

Ich setze und verwende gerne IntelliJs Verknüpfungen:

Edit.CollapsetoDefinitions: CTRL + SHIFT + NUM-

Edit.CollapseCurrentRegion: CTRL + NUM-

Edit.ExpandAllOutlining: CTRL + SHIFT + NUM+

Edit.ExpandCurrentRegion: CTRL + NUM+

26
W0lfw00ds

Sie können verwenden Ctrl + M und Ctrl + P

Es heißt Edit.StopOutlining

22

Zum Einklappen können Sie es versuchen CTRL + M + O und erweitern mit CTRL + M + P. Dies funktioniert in VS2008.

8
SUMAN

Gehen Sie zu Extras-> Optionen-> Texteditor-> c # -> Erweitert und deaktivieren Sie das erste Kontrollkästchen. Geben Sie den Gliederungsmodus ein, wenn Dateien geöffnet werden.

Dies wird dieses Problem für immer lösen

8
Sonja

Ich wollte schon immer, dass Visual Studio eine Option enthält, mit der nur die Regionen reduziert/erweitert werden können. Ich habe die folgenden Makros, die genau das tun.

Imports EnvDTE
Imports System.Diagnostics
' Macros for improving keyboard support for "#region ... #endregion"
Public Module CollapseExpandRegions
' Expands all regions in the current document
  Sub ExpandAllRegions()

    Dim objSelection As TextSelection ' Our selection object

    DTE.SuppressUI = True ' Disable UI while we do this
    objSelection = DTE.ActiveDocument.Selection() ' Hook up to the ActiveDocument's selection
    objSelection.StartOfDocument() ' Shoot to the start of the document

    ' Loop through the document finding all instances of #region. This action has the side benefit
    ' of actually zooming us to the text in question when it is found and ALSO expanding it since it
    ' is an outline.
    Do While objSelection.FindText("#region", vsFindOptions.vsFindOptionsMatchInHiddenText)
        ' This next command would be what we would normally do *IF* the find operation didn't do it for us.
        'DTE.ExecuteCommand("Edit.ToggleOutliningExpansion")
    Loop
    objSelection.StartOfDocument() ' Shoot us back to the start of the document
    DTE.SuppressUI = False ' Reenable the UI

    objSelection = Nothing ' Release our object

  End Sub

  ' Collapses all regions in the current document
  Sub CollapseAllRegions()
    Dim objSelection As TextSelection ' Our selection object

    ExpandAllRegions() ' Force the expansion of all regions

    DTE.SuppressUI = True ' Disable UI while we do this
    objSelection = DTE.ActiveDocument.Selection() ' Hook up to the ActiveDocument's selection
    objSelection.EndOfDocument() ' Shoot to the end of the document

    ' Find the first occurence of #region from the end of the document to the start of the document. Note:
    ' Note: Once a #region is "collapsed" .FindText only sees it's "textual descriptor" unless
    ' vsFindOptions.vsFindOptionsMatchInHiddenText is specified. So when a #region "My Class" is collapsed,
    ' .FindText would subsequently see the text 'My Class' instead of '#region "My Class"' for the subsequent
    ' passes and skip any regions already collapsed.
    Do While (objSelection.FindText("#region", vsFindOptions.vsFindOptionsBackwards))
        DTE.ExecuteCommand("Edit.ToggleOutliningExpansion") ' Collapse this #region
        'objSelection.EndOfDocument() ' Shoot back to the end of the document for
        ' another pass.
    Loop
    objSelection.StartOfDocument() ' All done, head back to the start of the doc
    DTE.SuppressUI = False ' Reenable the UI

    objSelection = Nothing ' Release our object

  End Sub
End Module

BEARBEITEN: Es gibt jetzt eine Verknüpfung mit dem Namen Edit.ToggleOutliningExpansion (Strg + M, Strg + M), um genau das zu tun.

4
Ray Pietrzak