Wie finde ich eine Datei im Projektmappen-Explorer in Visual Studio 2010?

172

Ich habe eine riesige Lösung mit mehreren Projekten. Manchmal muss ich im Projektmappen-Explorer zu einer Datei navigieren . Mit der VS 2010-Funktion " Navigieren zu " kann ich jede Datei nach Namen in Visual Studio 2010 öffnen, aber ich möchte die Datei auch im Projektmappen-Explorer auswählen können .

Amitabh
quelle
4
Die Frage betraf VS2010, aber falls sich jemand VS2013 ansieht: Schauen Sie sich Strg- an. für eine Suche im Projektmappen-Explorer oder Strg-, für die VS2012 / 13-Funktion "Navigieren zu".
John
1
Eine native Methode für VS 2012 und höher finden Sie in der Antwort von Aaron Carlson unten.
Derek Morrison

Antworten:

198

Es gibt eine Option zum Verfolgen des aktiven (geöffneten und angezeigten) Elements im Lösungs-Explorer. Wenn die Datei angezeigt wird, wird die Datei im Lösungs-Explorer ausgewählt.

Extras-> Optionen-> Projekte und Lösungen-> Aktives Element im Projektmappen-Explorer verfolgen

Jeff Mercado
quelle
33
Diese Einstellungen führen dazu, dass Projekt- und Lösungsknoten beim Öffnen von Dateien ständig erweitert werden. Nach 15 Minuten Arbeit an einem größeren Projekt habe ich so viele Knoten erweitert, dass der Lösungs-Explorer nicht mehr geeignet ist. DPack- Lösung ist IMO besser.
Karel Kral
@ karel-kral, ich habe eine Antwort hinzugefügt, die ein Makro verwendet, um diese Einstellung umzuschalten, die dieses erweiterte Knotenproblem umgeht.
Martin Hollingsworth
Die hier aufgeführten Resharper- oder Dpack-Lösungen umgehen das von Martin erwähnte Problem und machen diese Antwort nicht zur bevorzugten Option, wenn Ihnen eine der anderen zur Verfügung steht.
Rob Sedgwick
2
Für VS2012 + @ Aaron ist die Antwort die beste. Keine Installation Dinge Strg + [, s
BritishDeveloper
3
Er sagte, er wolle nur die Datei "Manchmal" nicht die ganze Zeit verfolgen. Die Antwort von Aaron Carlson sollte als die richtige Antwort markiert werden.
RayLoveless
150

VS2012 hat einen neuen Befehl namens aufgerufen SolutionExplorer.SyncWithActiveDocument. Die Standardverknüpfung für c # ist Ctrl+ [,S

Dieser Befehl navigiert zur aktiven Datei im Projektmappen-Explorer.

Außerdem muss anscheinend die Option "Aktives Element im Projektmappen-Explorer verfolgen" deaktiviert sein.

Aaron Carlson
quelle
4
Massives Versehen, dass dies nicht in Visual Studio 6.0 ging. Oder noch früher. WTF.
Almo
3
Vielen Dank! In meinem VS2013 , Ctrl+ [, Swar Standardsatz - Datei zu überprüfen , und SolutionExplorer.SyncWithActiveDocumentwurde nicht konfiguriert.
Hwcverwe
1
@ krypru, ich benutze VS2015 schon eine Weile und es funktioniert immer noch für mich. Vielleicht ist es nicht der gleichen Verknüpfung in Ihrer Umgebung zugeordnet?
Aaron Carlson
2
Zu Ihrer Information, Sie müssen sich nicht an die Tastenkombination erinnern: Der Projektmappen-Explorer (ich bin in VS 2015) hat oben ein Symbol (Doppelpfeile), das "Mit aktivem Dokument synchronisieren" ausführt.
ToolmakerSteve
2
VS 2017 hat eine "ReSharper" -Tastaturzuordnung unter Extras -> Optionen -> Umgebung -> Tastatur hinzugefügt. Dadurch wird die integrierte VS-Funktionalität der entsprechenden ReSharper-Verknüpfung zugeordnet. Sobald Sie dies eingestellt haben, können Sie die Shift+ Alt+ LVerknüpfung verwenden.
Andacious
121

Shift+ Alt+ LWird die aktuelle Datei in Projektmappen - Explorer in Visual Studio 2008+ mit ReSharper installiert finden.

Rob Willis
quelle
4
Wenn Sie verfolgen, benötigen Sie diese Verknüpfung nicht.
Davut Gürbüz
5
Es ist ein Reshaper-Befehl. Funktioniert für mich mit Visual Studio 2010 mit installiertem ReSharper.
Radim Cernej
+1; @ DavutGürbüz Manchmal benötigen Sie dies, um Visual Studio 2012 wieder in die automatische Verfolgung zu starten. Hin und wieder (obwohl das Kontrollkästchen "... Aktiv verfolgen ..." aktiviert ist, stoppt Visual Studio 2012 die Verfolgung. Diese ReSharper-Verknüpfung aktiviert dies wieder, ohne dass Visual Studio neu gestartet werden muss.
Jeroen Wiert Pluimers
@JeroenWiertPluimers Ich sehe. Ich habe die DPack-Erweiterung verwendet. Es ist sehr leicht und einfach zu bedienen. Klicken Sie einfach mit der rechten Maustaste auf die Registerkarte "Datei" und wählen Sie im Projektmappen-Explorer "Suchen". Ich kann es nur empfehlen. Es funktioniert alle Versionen von VS. ReSharper ist auch gut, aber wir bevorzugen es nicht. Weil wir die meisten Funktionen nicht nutzen. Es macht VS schwerer. Tracking macht den Solution Explorer chaotisch. DPack ist der beste. stackoverflow.com/a/4747759/413032
Davut Gürbüz
3
Die Verfolgung muss nicht aktiviert sein, damit Umschalt + Alt + L funktioniert. Zumindest nicht in VS 2010, das ich benutze.
Tor Haugen
36

Ich fand die Track-Option etwas nervig.

Ich bevorzuge DPack . Es enthält den Vorgang "Im Projektmappen-Explorer suchen" sowie viele andere Funktionen (einige sind in VS2010 weniger leistungsfähig, wie ihre Browser), und es ist kostenlos .

Beachten Sie, dass ReSharper auch über die Lokalisierungsfunktion verfügt, die besser funktioniert als die von DPack (in einigen Fällen funktioniert die Lokalisierung von DPack nicht, wenn die Datei hinter Ordnern reduziert ist). Sie möchten ReSharper jedoch nicht nur für diese Funktion kaufen .

HuBeZa
quelle
Die problemloseste Lösung ("Aktives Objekt verfolgen" ist irritierend und ReSharper ist nicht kostenlos).
Ian Kemp
@ IanKemp, es ist Geschmackssache. IMO ist das Tracking ärgerlich, weil: 1. Manchmal mag ich es, wenn der sln-Baum sich auf einen bestimmten Knoten konzentriert. 2. Nach einer Weile wird der SLN-Baum vollständig erweitert.
HuBeZa
28

Brian Schmitt hat dafür einen großartigen Beitrag zum Suchen von Dateien im Projektmappen-Explorer - Visual Studio-Makro . Das Makro ist extrem einfach und schnell. Grundsätzlich wird die Einstellung umgeschaltet

Tools->Options->Projects and Solutions->Track Active Item in Solution Explorer

Damit die aktuelle Datei im Projektmappen-Explorer ausgewählt wird, werden Sie jedoch nicht irritiert, wenn die Projektmappen-Explorer-Knoten für alle Dateien, auf die Sie zugreifen, erweitert werden, da sie nicht aktiviert bleiben.

Public Sub LocateFileInSolutionExplorer()
    DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
    DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
    DTE.ExecuteCommand("View.SolutionExplorer")
End Sub

Binden Sie einen Tastaturkürzel an dieses benutzerdefinierte Makro, um effektiv eine integrierte Visual Studio-Funktion zu erstellen.

Martin Hollingsworth
quelle
Dies funktioniert wirklich in VS 2010 und ist einfacher einzurichten als Sie denken (Tipps zum Hinzufügen von Makros: helixoft.com/blog/archives/6 ).
user1068352
Der in der ersten Antwortzeile angegebene Link ist fehlerhaft. Können Sie es bitte beheben?
Tyagi Akhilesh
@ TyagiAkhilesh - beachten Sie, dass diese Antwort (Hinzufügen Ihres eigenen Makros) nur benötigt wird, wenn Sie noch VS 2010 verwenden. Neuere Versionen haben einen eingebauten Befehl.
ToolmakerSteve
16

Wenn Sie über ReSharper verfügen und dem Kontextmenü der Registerkarte "Im Projektmappen-Explorer suchen" hinzufügen möchten:

  1. Gehen Sie zu Extras -> Anpassen -> Befehle -> Kontextmenü
  2. Wählen Sie "Andere Kontextmenüs | Einfaches MDI-Dokumentfenster".
  3. Klicken Sie auf "Befehl hinzufügen".
  4. Wählen Sie "Resharper" -> "ReSharper_LocateInSolutionOrAssemblyExplorer" (in VS2019 wurde der Kategoriename in "Extensions" geändert).
  5. "OK" -> "Schließen"

Wenn Sie nun mit der rechten Maustaste auf eine Registerkarte klicken, wird eine neue Option angezeigt: Suchen Sie im Projektmappen-Explorer.

AKTUALISIEREN:

Nach dem Kommentar von @ jeremy-paskali können Sie eine Tastenkombination für diesen Befehl festlegen:

  1. Gehen Sie zu Extras -> Anpassen -> "Tastatur ..."
  2. Suchen Sie im Feld "Befehle mit enthalten" nach "ReSharper.ReSharper_LocateInSolutionOrAssemblyExplorer" und wählen Sie es aus.
  3. Überprüfen Sie die aktuell zugewiesenen Verknüpfungen in der Dropdown-Liste unten.
  4. Nehmen Sie bei Bedarf Änderungen vor.
  5. "OK" -> "Schließen"
Shay
quelle
3
Wenn Sie in Visual Studio 2015 unten im Fenster "Anpassen" auf die Schaltfläche "Tastatur ..." klicken, gelangen Sie zum Dialogfeld "Optionen -> Umgebung -> Tastatur". In diesem Dialogfeld können Sie zu "ReSharper.ReSharper_LocateInSolutionOrAssemblyExplorer" navigieren und die Tastenkombination für diesen Befehl suchen oder ändern. Ich habe festgestellt, dass mein VS2015 auf "Shift + Alt + L" eingestellt war und es funktioniert!
Jeremy Paskali
Mehr als zwei Jahre später meldet sich, dass der Kontextmenü-Trick immer noch mit VS 2017 und R # 2018.2 funktioniert. Danke dafür!
Michael Armes
Wenn das Ausprobieren Shift+Alt+Lin VS2019 bei Ihnen nicht funktioniert hat, ist dies sicherlich der richtige Job.
Gosr
11

Ich weiß, dass es etwas zu spät ist, aber ich hoffe, es hilft jemand anderem. Die beste Option ist jetzt die Installation des Microsoft Visual Studio-Add-Ons - Productivity Power Tools.

http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef

Dazu gehört "Solution Navigator" (Alternative zum Solution Explorer mit vielen Vorteilen), mit dem Sie die Dateien filtern können, um nur "Öffnen" anzuzeigen. Sie können Dateien sogar filtern, um "Bearbeitet" und "Nicht gespeichert" anzuzeigen.

Freund
quelle
Ich benutze VS 2012 und die Elektrowerkzeuge. Ich sehe nirgendwo einen Solution Navigator. Möchten Sie das Thema näher erläutern? Sagen Sie beispielsweise, wo genau sich der Solution Navigator befindet.
Markieren Sie
Bearbeitet. Microsoft hatte vor, dies zu tun - am Ende wurden jedoch nur Teile davon migriert. Ich war enttäuscht, dass sie auch diesen weggelassen haben.
Freund
10

Visual Studio 2012 verfügt über eine neue Verknüpfung Ctrl [, S. Ja, Sie müssen eingeben Ctrl [und dann loslassen und dann sofort eingeben S(oder auf das kleine Synchronisierungssymbol oben in Solution Explored klicken). Es wird mit dem Element synchronisiert.

Natürlich können Sie die Verknüpfung ändern. Ich denke, ich werde versuchen, es Alt+Lzu finden.

Wenn Sie die Verknüpfung ändern möchten, ist es Befehlsnamen unter Options\Environment\Keyboardist SolutionExplorer.SyncWithActiveDocument.

Normalerweise ist dies nützlicher als immer das Verfolgen, was in älteren Versionen immer eine Katastrophe war, da es 100 Elemente hintereinander verfolgen und dann überall herumspringen würde ...

Simon_Weaver
quelle
Toll !!! In meinem VS2012 sind die Kombinationsschlüssel Ctrl+', s. Sie müssen sich also [mit dem Zitat ändern '. Ich hoffe das hilft jemandem.
Ferpega
3
"oder klicken Sie auf das kleine Synchronisierungssymbol oben in Solution Explore." Für mich ist dies der einfachste Weg, dies in den neueren Versionen von VS zu erreichen. Schön!
Andreas
Danke @mrt! Ich habe das in dieser Antwort total beschönigt; Aber Sie haben mich davor bewahrt, einige seltsame Anpassungsschritte ausführen zu müssen (oder sich an eine obskure Verknüpfung zu erinnern) ...! Dieser Knopf sollte in dieser Antwort expliziter genannt werden :)
Arichards
5

Wenn Sie die aktuelle Datei nur über eine Tastenkombination verfolgen möchten, lautet die Aktivität "View.TrackActivityinSolutionExplorer" (Tasten hier zuweisen -> Extras - Optionen - Umgebung - Tastatur)

Gutschrift (James 'Kommentar)

Das hat bei mir funktioniert

Pingo
quelle
Beachten Sie, dass hierdurch die Option "Aktives Element im Projektmappen-Explorer verfolgen" umgeschaltet wird. Wenn Sie diese Option nicht beibehalten möchten (weil sie ärgerlich ist), müssen Sie die zugewiesenen Tastenkombinationen zweimal eingeben: einmal, um sie einzuschalten (findet das ausgewählte Element) und dann erneut, um die Option auszuschalten.
Richard
0

Wenn Sie die Datei im Lösungs-Explorer auf Befehl auswählen und nichts installieren möchten, würde ich dieses Makro empfehlen .

Ich habe es getestet und die Verknüpfung auf Alt + T gesetzt. Ich kann bestätigen, dass es mit VS 2010 funktioniert.

Vielen Dank an Dan Vanderboom für das Schreiben.

Robert Whitley
quelle
0

In Visual Studio 2010 können Sie die Option "Aktives Element im Projektmappen-Explorer verfolgen" aktivieren. Dies bedeutet, dass bei jedem Wechsel zwischen Dokumenten das neue Dokument im Projektmappen-Explorer ausgewählt wird. Dies kann irritierend sein, wenn Ihre Lösung viele Ordner enthält, da beim Bewegen von Dateien in Ihrer Lösung alle Ordner geöffnet bleiben.

In Visual Studio 2012 wurde die neue Funktion "Mit aktivem Dokument synchronisieren" eingeführt. Drei ist eine Schaltfläche dafür oben im Projektmappen-Explorer, oder Sie können die Verknüpfung verwenden Ctrl + [, S.

Screenshot der Synchronisierung mit der aktiven Dokumentschaltfläche

thelem
quelle
Wurde dies nicht bereits durch bestehende Antworten von vor Jahren angemessen abgedeckt?
ToolmakerSteve
0

Für Visual Studio 2017 mit einer französischen AZERTY-Tastatur ist der Befehl der gleiche wie von Aaron Carlson angegeben, die Tastenkombination ist jedoch unterschiedlich.

Die AZERTY-Tastenkombination zum Navigieren zur aktiven Datei für c # lautet Ctrl+ ),Ctrl +S

Ich habe war die Abkürzung nicht für QWERTY - Benutzer in VS2017 auf dieser Seite geändert http://visualstudioshortcuts.com/2017/

PhilG
quelle