Freigeben über


Visual Studio Tipps &Tricks, Teil 48: IntelliSense Modus umschalten (Ctrl+Alt+Space)

[Jetzt neu: Kostenloser online Kurs zum Thema Visual Studio Tipps & Tricks in der Microsoft Virtual Academy]

Dass IntelliSense super ist, habe ich ja schon in Tipp 26 erzählt… manchmal findet man sich aber vielleicht in einer Situation wieder, die einen etwas frustriert – und IntelliSense scheint Schuld zu tragen.

Man nehme an, wir haben ein Objekt, und möchten eine Property des Objektes setzen. Die Property selbst haben wir aber noch gar nicht angelegt. Mittels der Visual Studio Bordmittel, wie z.B. Ctrl+. aus Tipp 27 ist so ein Vorgehen sehr bequem. Man programmiert vor sich hin und alles, was noch fehlt wird im Nachhinein generiert.

Der Haken: Wenn man ein Property setzen möchte, das es nicht gibt, springt Intellisense trotzdem an.

image

Wenn man nun eine Property anlegen will, die einen ähnlichen Namen trägt, wie eine existierende Property oder Methode (im Beispiel “Update”), dann erkennt IntelliSense hier einen Zusammenhang, den es eigentlich gar nicht geben soll.

image

Drückt man nun nach dem Tippen von “myGeoService.Update” auf "=”, um den Wert zuzuweisen, springt die Automatische Vervollständigung an. Dieser Modus (Completion Mode) ist eigentlich super, weil er es uns erlaubt, nur wenige Buchstaben einer Property zu tippen. Das spart normalerweise Arbeit. In diesem Fall, wird aber die neue Property falsch vervollständigt und zu “UpdateRouteToTargetAsync” – das ist die einzige Property, die IntelliSense für dieses Objekt kennt, denn die andere gibt’s ja noch nicht.

image

Autsch! Das ist leider nicht, was wir wollten. Wer das schon erlebt hat, weiß, wie sehr man genervt ist, wenn man wieder alle Zeichen löschen muss (und im schlimmsten Fall danach nochmal in das gleiche Problem läuft)!

Abhilfe: IntelliSense Suggestion Mode

Zum Glück gibt es den “Suggestion Mode”. Dieser lässt sich über Ctrl+Alt+Space aktivieren und sorgt dafür, dass man frei darauf lostippen kann, ohne, dass IntelliSense korrigierend eingreift. Trotzdem kann man über die Cursortasten die Vorschläge von IntelliSense aktivieren, man muss aber in diesem Fall selbst aktiv werden.

Das sieht dann folgendermaßen aus, man hat im IntelliSense Vorschaufenster oben einen kleinen Platzhalter.

image

Hier kann man ohne Probleme neue Properties eintippen.

image

Die Vervollständigung greift nicht ein und man erhält das gewünschte Ergebnis.

image

So soll es sein. Das Umschalten funktioniert wie beschrieben via Shortcut – alles andere wäre auch etwas sinnlos, da man sich meist vermutlich im Completion Modus befinden will. Ctrl+Alt+Space ist also eine Tastaturkombination, die es sich zu merken lohnt!

Wer den Bing Developer Assistant installiert hat, der wird feststellen, dass es hier keine optische Änderung gibt – der Suggestion Mode funktioniert zwar, der Platzhalter im Vorschaufenster fehlt aber.

 

Kurzer Text am Rande:

Dieser Post ist Teil einer längeren Serie, in der ich ein paar der vielleicht nicht ganz so bekannten Features von Visual Studio vorstellen werde. Ich hoffe, für Euch ist der ein oder andere Kniff dabei, den Ihr noch nicht kanntet. Und wenn ihr ihn doch schon kennt: Seid stolz auf Euch und verratet den Trick auch dem Entwickler neben Euch.

Comments

  • Anonymous
    January 12, 2015
    Ich benutze eigentlich nur den Vervollständigungsmodus. Wenn ich auf etwas zugreife, was noch nicht existiert, drücke ich nach der Eingabe einfach kurz Esc - fertig. PS: Aus irgend einem Grund ist bei mir der Shortcut nicht mit dem Umschalten des Modus verknüpft. Wer das auch bei sich als Fehler vermutet, kann den Befehl unter Bearbeiten > IntelliSense finden und ggf. einen eigenen Shortcut anlegen.