Skrót klawiaturowy Visual Studio do automatycznego dodawania potrzebnej instrukcji „using”

255

Jaki jest skrót klawiaturowy, aby rozwinąć małą czerwoną linię, która daje menu, w którym możesz wybrać usingdodanie niezbędnej instrukcji na górze pliku?

Bramha Ghosh
źródło

Odpowiedzi:

407

Ctrl+ .pokazuje menu. Uważam to za łatwiejsze do wpisania niż alternatywa, Alt+ Shift+ F10.

Można to ponownie powiązać z czymś bardziej znanym, przechodząc do Narzędzia> Opcje> Środowisko> Klawiatura> Visual C #> Widok.

Orion Adrian
źródło
6
Tak, myślę, że to do tego przywykłeś. Nie mam trudności z Alt + Shift + F10, podczas gdy Ctrl +. czuje się zupełnie obcy. Myślę, że zaakceptujemy wszystko, biorąc pod uwagę wystarczające uwarunkowanie. : D
Jeff Yates
6
Mam jedną z klawiatur Microsoft z blokadą funkcji ... człowieku, nienawidzę tego.
Orion Adrian
1
Mam jedną z nich w domu. Blokada funkcji była głupim pomysłem.
Jeff Yates
3
Wow, nie wiedziałem o Ctrl +. lub Alt + Shift + F10, ale zawsze zastanawiałem się, czy nie było takiego skrótu. Mam także klawiaturę z blokadą funkcji, ale zawsze pamięta swój stan, więc nie ma problemu (Microsoft Natural Ergonomics Keyboard 4000).
OregonGhost
1
ctrl + wydaje mi się do końca linii ... Nie jestem pewien, dlaczego jest inaczej.
justin.m. chase
37

Alt+ Shift+ F10wyświetli menu powiązane z tagiem inteligentnym.

Jeff Yates
źródło
2
Kursor musi znajdować się na nazwie klasy / interfejsu, którą wpisałeś, aby to zadziałało.
Pranav Mahajan
Tak. Musi to być również kursor myszy, a nie tylko kursor klawiatury, a konieczność przesuwania kursora myszy w celu uzyskania dostępu do niego całkowicie eliminuje konieczność posiadania skrótu klawiaturowego.
Neutrino,
@ Neutrino Z pewnością tak nie jest dla mnie. Kursor myszy nie ma z tym nic wspólnego.
Jeff Yates,
26

Bardzo polecam sprawdzenie wtyczki Visual Studio ReSharper. Ma funkcję QuickFix, która robi to samo (i wiele więcej).

Ale ReSharper nie wymaga, aby kursor znajdował się na rzeczywistym kodzie, który wymaga nowej przestrzeni nazw. Powiedzmy, że skopiujesz / wkleisz trochę kodu do pliku źródłowego i wystarczy kilka kliknięć Alt+ Enter, aby uwzględnić wszystkie wymagane zastosowania.

Och, a także zapewnia, że ​​wymagane odwołanie do zespołu zostanie dodane do twojego projektu. Załóżmy na przykład, że tworzysz nowy projekt zawierający testy jednostkowe NUnit . W pierwszej klasie, którą piszesz, dodajesz atrybut [TestFixture]. Jeśli masz już w swoim projekcie jeden projekt, który odwołuje się do pliku DLL NUnit, to ReSharper może zobaczyć, że TestFixtureAttribute pochodzi z tego pliku DLL, więc automatycznie doda to odwołanie do zespołu do nowego projektu.

I dodaje także wymagane przestrzenie nazw dla metod rozszerzeń. Przynajmniej tak robi wersja 5 ReSharper beta. Jestem prawie pewien, że wbudowana funkcja rozpoznawania Visual Studio tego nie robi.

Z drugiej strony jest to produkt komercyjny, więc trzeba za niego zapłacić. Ale jeśli pracujesz z oprogramowaniem komercyjnym, uzyskana wydajność (wtyczka robi wiele innych fajnych rzeczy) przewyższa cenę.

Tak, jestem fanem;)

Pete
źródło
14

W programie Visual Studio 2010 można znaleźć polecenie klawiatury do rozpoznawania przestrzeni nazw w poleceniu o nazwie View.ShowSmartTag . Mój został również zamapowany na Shift+ Alt+, F10co jest dużym kłopotem - więc zwykle szybko go mapuję.

Na Pete komentujący ReSharper - tak, dla każdego z budżetem ReSharper sprawia, że ​​życie jest absolutną przyjemnością. Fakt, że jest wystarczająco inteligentny, aby rozwiązywać zależności poza bieżącymi referencjami i dodawać je zarówno jako zastosowania, jak i referencje, nie tylko pozwoli Ci zaoszczędzić niezliczone godziny, ale także sprawi, że zapomnisz, gdzie znajdują się wszystkie klasy frameworka ;-) Tak to ułatwia. życie deweloperskie ... Wtedy nawet nie rozpoczęliśmy jeszcze refaktoryzacji ReSharper.

DevExpress' CodeRush oferuje żadnej pomocy w tym zakresie; lub nic, co jest dla mnie oczywiste - a DevExpress w trybie nie-eksperckim jest całkiem gotowy w tym, co chce dla ciebie zrobić :-)

Ostatni komentarz - ta funkcja rozwiązywania zależności IDE jest tak dojrzała i dopracowana w świecie IDE Java, że ​​większość próbek internetowych nawet nie pokazuje już importu (używania).

To powiedziawszy, Microsoft ma teraz wreszcie coś do zaoferowania w tym względzie, ale jest dla mnie również jasne, że rozwój Microsoft (dla wielu z nas) zatoczył koło - skupiono się na źródłach, na projektantach wizualnych od samego początku. ponownie w źródle - co oznacza, że ​​czas spędzony w widoku kodu źródłowego / niezależnie od tego, czy jest to C #, VB czy XAML, rośnie, a ilość przeciągania i upuszczania na „formularze” spada. Przy tym podstawowym założeniu można łatwo powiedzieć, że Microsoft powinien zacząć koncentrować się na ulepszaniu edytora, ułatwieniu korzystania ze skrótów klawiaturowych oraz lepszym sprawdzaniu i ocenie kodu / błędów - w dniach, gdy głupi edytor zostawia cię w Google, aby dowiedzieć się, w biblioteka, w której się znajduje, zniknęła (lub powinna być w każdym razie) dla większości z nas.

Gawie Kellerman
źródło
Właśnie tego szukałem! Jak nazywa się to polecenie, więc mogę je ponownie przypisać. Wyrazy uznania za znalezienie jego nazwy ... naprawdę niejasne.
hodowca świń
6
  • Kontekst Klawisz Menu (jeden z menu, obok prawego klawisza Windows)
  • Następnie wybierz z menu opcję „Rozwiąż”. Można to zrobić, naciskając „s”.
James Curran
źródło
0

Jest ctrl+, .gdy na przykład próbujesz pisać List, musisz wpisać <na końcu i naciśnij ctrl+ ., aby zadziałało.

Slobodan Stanković
źródło