web-dev-qa-db-fra.com

Raccourcis clavier Visual Studio Développer / Réduire

Dans Visual Studio, si un fichier de code est ouvert, je peux appuyer sur CTRL + M ou CTRL + M + O pour réduire tous les blocs de code, régions, espaces de noms, etc.

Comment faire le contraire et tout développer?

J'ai googlé cela, mais n'arrive pas à trouver un raccourci qui fonctionne!

179
series0ne

Réduire aux définitions

CTRL + MO

développez tous les contours

CTRL + MX

Développer ou réduire tout

CTRL + ML

Ceci fonctionne aussi avec d'autres langages comme TypeScript et JavaScript

311
series0ne

Comme vous pouvez le constater, il existe plusieurs façons de réaliser cela.

J'utilise personnellement:

Développer tout: CTRL + M + L

Réduire tout: CTRL + M + O

Prime:

Développer/Réduire à l'emplacement du curseur: CTRL + M + M

122
Sirar Salih

Visual Studio 2015:

Tools > Options > Settings > Environment > Keyboard

Valeurs par défaut:

Editer.CollapsetoDefinitions: CTRL + M + O

Edit.CollapseCurrentRegion: CTRL + M +CTRL + S

Edit.ExpandAllOutlining: CTRL + M + CTRL + X

Edit.ExpandCurrentRegion: CTRL + M + CTRL + E

J'aime définir et utiliser les raccourcis d'IntelliJ:

Editer.CollapsetoDefinitions: CTRL + SHIFT + NUM-

Edit.CollapseCurrentRegion: CTRL + NUM-

Edit.ExpandAllOutlining: CTRL + SHIFT + NUM+

Edit.ExpandCurrentRegion: CTRL + NUM+

26
W0lfw00ds

Vous pouvez utiliser Ctrl + M et Ctrl + P

C'est ce qu'on appelle Edit.StopOutlining

22

Pour effondrement, vous pouvez essayer CTRL + M + O et étendre en utilisant CTRL + M + P. Cela fonctionne dans VS2008.

8
SUMAN

Allez dans Outils-> Options-> Editeur de texte-> c # -> Avancé et décochez la première case pour entrer en mode de structure lorsque les fichiers sont ouverts.

Cela résoudra ce problème pour toujours

8
Sonja

J'ai toujours souhaité que Visual Studio inclue une option permettant simplement de réduire/développer les régions. J'ai les macros suivantes qui feront exactement cela.

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

EDIT: Il existe maintenant un raccourci appelé Edit.ToggleOutliningExpansion (Ctrl + M, Ctrl + M) pour cela.

4
Ray Pietrzak