Zdarza się, że mamy w projekcie grupę plików powiązanych ze sobą logicznie. Na przykład – jeden wygenerowany automatycznie i drugi uzupełniający go własnoręcznie napisanym kodem. Przykładem “z życia” są tu klasy form z .NET, gdzie to Visual Studio standardowo pokazuje swoją ciekawą funkcjonalność “zwijania” grupy powiązanych plików. Niestety, takie zachowanie nie jest dostępne w żaden znany mi sposób z poziomu interfejsu użytkownika. Jak więc wykorzystać ten trik we własnych programach?
Zamykamy Visual Studio i otwieramy plik projektu (.csproj) w niezasłużenie nieśmiertelnym Notatniku (niezasłużenie, więc ja otwieram w Notepad2). Odnajdujemy interesujące nas wpisy, przykładowo:
Efektem takich instrukcji jest standardowe wyświetlenie w Solution View plików jeden pod drugim:
Lekko zmodyfikujmy ów XML, wstawiając w odpowiednie miejsce element będący bohaterem niniejszego wpisu, czyli <DependentUpon>:
I co otrzymamy? Zalotny krzyżyk szepczący “kliknij mnie, użyj mnie, rozwiń mnie”…
Gdyby wszystko było tak proste i kończyło się takim zalotnym szeptem…
Update 22/03/2008: dostałem na maila informację o pluginie, który umożliwia osiągnięcie tego efektu bez konieczności edycji pliku projektu, do pobrania tutaj. THX madzi.
Jeśli jest na blogu zawarta odpowiedź na moje pytania to z góry przepraszam.
1. Jak zwinąć całe drzewo w Solution Explorerze?
2. Jak je posortować? Jedyny sposób jaki udało mi się odkryć to zwinięcie drzewa (ręczne) i restart VS.
Pozdrawiam
Odpowiedzi nie ma, zatem oto one z mojej strony:
1) Opcja zwiniecia wszystkich projektow (Collapse Projects) pojawi się po zainstalowniu dodatku PowerCommands (http://code.msdn.microsoft.com/PowerCommands)
2) Sam potrzebowalem ostatnio sortowania w SolutionExplorze, niestety rozwiazania nie znalazlem.