1. Załóżmy, że mamy klasę z wieloma polami, np.:
public struct Employee { internal string Field1; internal string Field2; internal string Field3; internal string Field4; internal string Field5; internal string Field6; }
Następnie chcemy zmienić modyfikator internal na public. Naturalne podejście byłoby zmodyfikowanie wszystkich wywołań jeden po drugim. Inne rozwiązanie to CTRL+H i automatycznie zastąpienie. W zależności od konkretnej klasy, może być to wygodne lub nie. Trzeba być uważnym jednak, aby wszystkich wystąpień w pliku nie zamienić(jeśli np. chcemy tylko kilka z nich zaktualizować).
W VS możemy nacisnąć klawisz ALT, który umożliwi nam pionowe zaznaczenie tzn.:
Następnie możemy zmodyfikować tekst do public i zostanie to odzwierciedlone we wszystkich zaznaczonych liniach tzn.:
To jest dość stara funkcja Visual Studio, ale niezbyt popularna, a czasami potrafi ułatwić życie.
2. Jeśli użyjemy CTRL, a potem – (myślnik), to kursor zostanie przeniesiony do ostatnio używanej linii Przydatne, gdy skaczemy gdzieś dalej w pliku (aby zmodyfikować np. parametr wejściowy), a potem chcemy z powrotem powrócić bez używania myszki. Analogicznie możemy skorzystać z kombinacji CTRL, Shift, – aby przejść do przodu.
3. Generalnie zasada jest taka, że im mniej używamy myszki, tym szybciej jesteśmy w stanie pisać kod. Ciekawym skrótem jest CTRl+X, który usuwa całą linie. Jeśli zaznaczymy ręcznie linie, to usunięta zostanie wyłącznie sama linia, bez znaku nowej linii. Na przykład, jeśli mamy kursor na polu Field3 to naciśnięcie CTRL+X, spowoduje usunięcie go wraz ze znakiem nowej linii, co poskutkuje:
public struct Employee { public string Field1; public string Field2; public string Field4; public string Field5; }
Jeśli z kolei cała linia byłoby zaznaczona, to znak nowej linii zostanie pozostawiony bez zmian:
public struct Employee { public string Field1; public string Field2; public string Field4; public string Field5; }
4. Jeśli chcemy przejść do innego aktywnego pliku (bez używania myszki) możemy użyć kombinacji CTRL+Tab, co wyświetli następujące okno:
5. Shift+Alt+Enter – szybkie przełączanie się między FULLSCREEN a normalnym trybem. Przydatne, gdy mamy dużo kodu i nie chcemy szukać tej opcji w menu.
6. Jeśli chcemy przesunąć daną linię w dół albo w górę również nie musimy używać myszki. Wystarczy nacisnąć alt i strzałkę w górę (up) lub w dół (down).
7. Zoom chyba jest dość oczywisty w VS. Wystarczy nacisnąć ctrl i poruszać kółkiem myszki, a rozmiar czcionki automatycznie będzie modyfikowany (tak jak to w większości przeglądarkach internetowych).
8. Pamiętam, że kiedyś aby sformatować kod w VS, używałem zwykle zamknięcia klamr itp. Na szczęście istnieje skrót, który to zrobi dla nas w dowolnym momencie. Załóżmy, że mamy źle sformatowany kod tzn.:
W menu głównym możemy przejść do Edit->Advanced->Format Document:
Warto również zapamiętać pokazane skróty klawiszowe – klikanie po menu jest zdecydowanie zbyt powolne…
9. Przewijanie bez myszki i zachowanie pozycji kursora – CTRL + UP albo DOWN.
10. Bardzo dużo osób używa resharper’a. Często zamiast korzystać z Solution Explorer, klikamy CTRL+T, aby przejść do konkretnej klasy. Niestety, czasami mamy tak skomplikowaną strukturę folderów, że nie mamy pojęcia gdzie znaleziony plik przez Resharper znajduje się. A co jeśli chcemy przenieść dany plik do innego folderu? Musimy jakąś zlokalizować dany element w Solution Explorer. W VS możemy kliknąć na Sync With Active Document w SE:
Mam na myśli tą ikonę dwóch strzałek. Wtedy automatycznie zostaniemy przeniesieni do danego pliku w Solution Explorer:
11. Peek Definition. To nowa opcja w VS o której pisałem tutaj. Wspominam o niej ponownie, ponieważ moim zdaniem jest niedoceniana i przez to nie zawsze programiści wyrabiają sobie odpowiedni nawyk z nowym narzędziem.
Jeśli ktoś (jak np. ja) lubi zawsze mieć mieć pokazane, gdzie znajduje się plik otwarty w edytorze bez klikania “Sync With Active Document”, może włączyć ciągłe śledzenie edytowanego dokumentu w opcjach:
Tools -> Options -> Projects and Solutions -> General -> Track Active Item In Solution Explorer
Bardzo przydatna lista, szkoda że Peek Definition nie działa w wersji ekspress.
Proponowałbym jeszcze dodać do listy Ctrl + .
rozwiązuje zależności związane z namespace, implementuje interfejs, wstawia method stub itd.
Odnośnie punktu 10 to jest jeszcze skrót Shift+Alt+L.
Działa jak masz kursor w otwartym pliku.