Scorciatoia da tastiera di Visual Studio per aggiungere automaticamente l'istruzione "using" necessaria


Risposte:


407

Ctrl+ .mostra il menu. Trovo questo più facile da scrivere rispetto all'alternativa, Alt+ Shift+ F10.

Puoi ricollegarlo a qualcosa di più familiare andando su Strumenti> Opzioni> Ambiente> Tastiera> Visual C #> View.QuickActions


6
Sì, credo sia quello a cui sei abituato. Non ho difficoltà con Alt + Maiusc + F10 mentre Ctrl +. si sente totalmente alieno. Immagino che accetteremo qualsiasi cosa dato abbastanza condizionamento. : D
Jeff Yates,

6
Ho una delle tastiere Microsoft con il loro blocco funzione ... amico, odio quella cosa.
Orion Adrian,

1
Ne ho uno a casa. Il blocco delle funzioni era un'idea stupida.
Jeff Yates,

3
Wow, non sapevo di Ctrl +. o Alt + Maiusc + F10, ma mi chiedevo sempre se esistesse una scorciatoia. Ho anche una tastiera con blocco delle funzioni, ma ricorda sempre il suo stato, quindi nessun problema qui (Microsoft Natural Ergonomics Keyboard 4000).
OregonGhost,

1
ctrl + sembra al crepuscolo alla fine della linea per me ... Non sono sicuro del perché sia ​​diverso.
justin.m.chase l'

37

Alt+ Shift+ F10mostrerà il menu associato allo smart tag.


2
Il cursore dovrà essere sul nome della classe / dell'interfaccia digitato affinché funzioni.
Pranav Mahajan,

Sì. E deve essere anche il cursore del mouse, non solo il cursore della tastiera, e dover spostare il cursore del mouse lì per accedervi sconfigge completamente il punto di avere una scorciatoia da tastiera.
Neutrino

@Neutrino Questo non è certamente il caso per me. Il cursore del mouse non ha nulla a che fare con esso.
Jeff Yates,

26

Consiglio vivamente di dare un'occhiata al plug-in ReSharper di Visual Studio. Ha una funzione QuickFix che fa lo stesso (e molto altro).

Ma ReSharper non richiede che il cursore si trovi sul codice effettivo che richiede un nuovo spazio dei nomi. Ad esempio, copi / incolli un po 'di codice nel file sorgente, e solo pochi clic di Alt+ Entere tutti gli utilizzi richiesti sono inclusi.

Oh, e si assicura anche che il riferimento dell'assembly richiesto venga aggiunto al progetto. Ad esempio, si crea un nuovo progetto contenente unit test NUnit . La prima classe che scrivi, aggiungi l'attributo [TestFixture]. Se hai già un progetto nella tua soluzione che fa riferimento al file DLL NUnit, ReSharper è in grado di vedere che TestFixtureAttribute proviene da quel file DLL, quindi aggiungerà automaticamente quel riferimento di assieme al tuo nuovo progetto.

Inoltre aggiunge gli spazi dei nomi richiesti per i metodi di estensione. Almeno la versione 5 di ReSharper beta lo fa. Sono abbastanza sicuro che la funzione di risoluzione integrata di Visual Studio non lo faccia.

Sul lato negativo, è un prodotto commerciale, quindi devi pagare per questo. Ma se lavori commercialmente con software, la produttività acquisita (il plug-in fa molte altre cose interessanti) supera il prezzo.

Sì, sono un fan;)


14

In Visual Studio 2010 troverai il comando da tastiera per risolvere gli spazi dei nomi in un comando chiamato View.ShowSmartTag . Anche il mio è stato mappato su Shift+ Alt+, il F10che è molto fastidioso, quindi di solito lo rimpiazzo prontamente.

Sul commento di Pete su ReSharper - sì, per chiunque abbia un budget limitato, ReSharper rende la vita un piacere assoluto. Il fatto che sia abbastanza intelligente da risolvere le dipendenze al di fuori dei riferimenti attuali e aggiungerli sia come usi che come riferimenti non solo ti farà risparmiare innumerevoli ore, ma ti farà anche dimenticare dove risiedono tutte le classi di framework ;-) Questo è quanto sia facile vita di sviluppo ... Quindi non abbiamo ancora iniziato i refactoring ReSharper.

Il CodeRush di DevExpress non offre assistenza al riguardo; o niente di ciò che è ovvio per me - e DevExpress in modalità non esperto è abbastanza imminente in quello che vuole fare per te :-)

Ultimo commento: questa funzione IDE per risolvere le dipendenze è così matura e raffinata nel mondo IDE Java che la maggior parte degli esempi di Internet non mostra più nemmeno le importazioni (usando).

Detto questo, Microsoft ora ha finalmente qualcosa da offrire a questo proposito, ma è anche chiaro per me che lo sviluppo di Microsoft (per molti di noi) ora è tornato al punto di partenza: l'attenzione si è spostata dalla fonte, ai visual designer, tornando a concentrarsi sull'essere di nuovo sul sorgente - il che significa che il tempo che passi in una vista del codice sorgente / se si tratta di C #, VB o XAML è in aumento e la quantità di trascinamento della selezione in "moduli" è in diminuzione. Con questo presupposto di base, è semplice affermare che Microsoft dovrebbe iniziare a concentrarsi sul rendere l'editor più intelligente, le scorciatoie da tastiera più facili e il controllo e la valutazione del codice / errore migliori - i giorni in cui un muto editor ti lasciava su google una classe per scoprire in la biblioteca in cui risiede è sparita (o dovrebbe essere in ogni caso) per la maggior parte di noi.


Questo è quello che stavo cercando! Come si chiama il comando così posso rimapparlo. Complimenti per aver trovato il suo nome ... davvero oscuro.
Festa dei suini il

6
  • Tasto del menu contestuale (uno con il menu su di esso, accanto al tasto Windows destro)
  • Quindi scegli "Risolvi" dal menu. Questo può essere fatto premendo "s".

0

È ctrl+ .quando, ad esempio, si tenta di digitare Listè necessario digitare <alla fine e premere ctrl+ .affinché funzioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.