IntelliSense dans Visual StudioIntelliSense in Visual Studio

IntelliSense est une aide à la complétion de code qui inclut plusieurs fonctionnalités : Liste des membres, Informations sur les paramètres, Info express et Compléter le mot.IntelliSense is a code-completion aid that includes a number of features: List Members, Parameter Info, Quick Info, and Complete Word. Ces fonctionnalités vous aident à en savoir plus sur le code que vous utilisez, à assurer le suivi des paramètres que vous tapez et à ajouter des appels aux propriétés et aux méthodes en quelques séquences de touches.These features help you to learn more about the code you're using, keep track of the parameters you're typing, and add calls to properties and methods with only a few keystrokes.

De nombreux aspects d'IntelliSense sont spécifiques au langage.Many aspects of IntelliSense are language-specific. Pour plus d'informations sur l’utilisation d’IntelliSense dans différents langages, consultez les rubriques répertoriées dans la section Voir aussi.For more information about IntelliSense for different languages, see the topics listed in the See also section.

Liste des membresList Members

Une liste de membres valides d'un type (ou d'un espace de noms) apparaît lorsque vous tapez un caractère déclencheur (par exemple, un point (.) en code managé ou :: en C++).A list of valid members from a type (or namespace) appears after you type a trigger character (for example, a period (.) in managed code or :: in C++). Si vous continuez à taper des caractères, la liste est filtrée pour inclure uniquement les membres qui commencent par ces caractères ou les membres dont le nom contient un mot qui commence par ces caractères.If you continue typing characters, the list is filtered to include only the members that begin with those characters or where the beginning of any word within the name starts with those characters. IntelliSense effectue également une mise en correspondance en « casse mixte ». Pour afficher les correspondances, vous pouvez donc simplement taper la première lettre de chaque mot en casse mixte composant le nom de membre.IntelliSense also performs "camel case" matching, so you can just type the first letter of each camel-cased word in the member name to see the matches.

Après avoir sélectionné un élément, insérez-le dans votre code en appuyant sur la touche Tab ou en tapant un espace.After selecting an item, you can insert it into your code by pressing Tab or by typing a space. Si vous sélectionnez un élément et que vous tapez un point, l'élément apparaît suivi du point, ce qui provoque l'affichage d'une autre liste de membres.If you select an item and type a period, the item appears followed by the period, which brings up another member list. Lorsque vous sélectionnez un élément, mais avant de l'insérer, vous obtenez des informations express le concernant.When you select an item but before you insert it, you get Quick Info for the item.

Dans la liste des membres, l'icône de gauche représente le type de membre, tel que l'espace de noms, la classe, la fonction ou la variable.In the member list, the icon to the left represents the type of the member, such as namespace, class, function, or variable. Pour obtenir une liste des icônes, consultez Icônes de l’Explorateur d’objets et de la fenêtre Affichage de classes.For a list of icons, see Class View and Object Browser icons. Si la liste est longue, appuyez sur Pg. préc et Pg. suiv pour vous déplacer vers le haut ou vers le bas dans la liste.The list may be quite long, so you can press PgUp and PgDn to move up or down in the list.

Liste des membres Visual Studio

Vous pouvez appeler la fonctionnalité Liste des membres manuellement en appuyant sur Ctrl+J, en choisissant Edition > IntelliSense > Liste des membres ou en choisissant le bouton Liste des membres dans la barre d’outils de l’éditeur.You can invoke the List Members feature manually by typing Ctrl+J, choosing Edit > IntelliSense > List Members, or by choosing the List Members button on the editor toolbar. Lorsque la liste des membres est appelée sur une ligne vide ou en dehors d'une portée reconnue, elle affiche des symboles dans l'espace de noms global.When it is invoked on a blank line or outside a recognizable scope, the list displays symbols in the global namespace.

Pour désactiver par défaut la liste des membres (afin qu’elle n’apparaisse pas sauf si elle est explicitement appelée), accédez à Outils > Options > Tous les langages et désélectionnez Répertorier automatiquement les membres.To turn List Members off by default (so that it does not appear unless specifically invoked), go to Tools > Options > All Languages and deselect Auto list members. Si vous souhaitez désactiver la liste des membres uniquement pour un langage spécifique, accédez à la page de paramètres Général pour ce langage.If you want to turn off List Members only for a specific language, go to the General settings for that language.

Vous pouvez également passer en mode suggestion, où seul le texte que vous tapez est inséré dans le code.You can also change to suggestion mode, in which only the text you type is inserted into the code. Par exemple, si vous entrez un identificateur qui ne figure pas dans la liste et que vous appuyez sur Tab, en mode de saisie semi-automatique, l’entrée remplace l’identificateur tapé.For example, if you enter an identifier that is not in the list and press Tab, in completion mode the entry would replace the typed identifier. Pour basculer entre le mode Saisie semi-automatique et le mode Suggestion, appuyez sur Ctrl+Alt+Barre d’espace ou choisissez Edition > IntelliSense > Activer/Désactiver le mode de saisie semi-automatique.To toggle between completion mode and suggestion mode, press Ctrl+Alt+Space, or choose Edit > IntelliSense > Toggle Completion Mode.

Informations sur les paramètresParameter Info

Informations sur les paramètres fournit des informations sur le nombre, les noms et les types des paramètres requis par une méthode, un paramètre de type générique d'attribut (en C#) ou un modèle (en C++).Parameter Info gives you information about the number, names, and types of parameters required by a method, attribute generic type parameter (in C#), or template (in C++).

Le paramètre suivant à taper pour la fonction vous est indiqué en gras.The parameter in bold indicates the next parameter that is required as you type the function. Pour les fonctions surchargées, vous pouvez utiliser les touches Haut et Bas pour consulter les différentes informations de paramètres concernant les surcharges de fonction.For overloaded functions, you can use the Up and Down arrow keys to view alternative parameter information for the function overloads.

Informations sur les paramètres

Lorsque vous annotez des fonctions et des paramètres avec les commentaires de documentation XML, les commentaires apparaissent comme Informations sur les paramètres.When you annotate functions and parameters with XML Documentation comments, the comments will display as Parameter Info. Pour plus d’informations, consultez Insérer des commentaires dans le code XML.For more information, see Supply XML code comments.

Vous pouvez appeler manuellement la fonctionnalité Informations sur les paramètres en choisissant Edition > IntelliSense > Informations sur les paramètres, en appuyant sur Ctrl+Maj+Barre d’espace ou en choisissant le bouton Informations sur les paramètres dans la barre d’outils de l’éditeur.You can manually invoke Parameter Info by choosing Edit > IntelliSense > Parameter Info, by pressing Ctrl+Shift+Space, or by choosing the Parameter Info button on the editor toolbar.

Info expressQuick Info

Infos express affiche la déclaration complète de tout identificateur dans votre code.Quick Info displays the complete declaration for any identifier in your code.

Info express Visual Studio

Quand vous sélectionnez un membre dans la zone Liste des membres, l’info-bulle Info express s’affiche aussi.When you select a member from the List Members box, Quick Info also appears.

Informations sur les paramètres dans un fichier de code C#

Vous pouvez appeler manuellement la fonctionnalité Info express en choisissant Edition > IntelliSense > Info express, en appuyant sur Ctrl+I ou en choisissant le bouton Info express dans la barre d’outils de l’éditeur.You can manually invoke Quick Info by choosing Edit > IntelliSense > Quick Info, by pressing Ctrl+I, or by choosing the Quick Info button on the editor toolbar.

Si une fonction est surchargée, il est possible que la fonctionnalité IntelliSense n'affiche pas les informations de toutes les formes de la surcharge.If a function is overloaded, IntelliSense may not display information for all forms of the overload.

Vous pouvez désactiver la fonctionnalité Info express pour le code C++ en accédant à Outils > Options > Éditeur de texte > C/C++ > Avancé, puis en définissant Info express automatique sur false.You can turn Quick Info off for C++ code by navigating to Tools > Options > Text Editor > C/C++ > Advanced, and setting Auto Quick Info to false.

Compléter le motComplete Word

La fonctionnalité Compléter le mot entre automatiquement la fin du nom de variable, de commande ou de fonction dès que vous avez entré assez de caractères pour lever toute ambiguïté sur le nom.Complete Word completes the rest of a variable, command, or function name after you have entered enough characters to disambiguate the term. Vous pouvez appeler la fonctionnalité Compléter le mot en choisissant Edition > IntelliSense > Compléter le mot, en appuyant sur Ctrl+Espace ou en choisissant le bouton Compléter le mot dans la barre d’outils de l’éditeur.You can invoke Complete Word by choosing Edit > IntelliSense > Complete Word, by pressing Ctrl+Space, or by choosing the Complete Word button on the editor toolbar.

Options IntelliSenseIntelliSense options

Les options IntelliSense sont activées par défaut.IntelliSense options are on by default. Pour les désactiver, choisissez Outils > Options > Éditeur de texte et désélectionnez Informations sur les paramètres ou Répertorier automatiquement les membres si vous n’avez pas besoin de la fonctionnalité Liste des membres.To turn them off, choose Tools > Options > Text Editor and deselect Parameter information or Auto list members if you do not want the List Members feature.

Icônes IntelliSenseIntelliSense icons

Les icônes dans IntelliSense peuvent indiquer une signification supplémentaire avec des modificateurs d’icône.The icons in IntelliSense can convey additional meaning with icon modifiers. Il s’agit d’étoiles, de cœurs et de verrous superposés à l’icône de l’objet, qui indiquent respectivement Protégé, Interne ou Privé.These are stars, hearts, and locks layered on top of the object's icon that convey protected, internal, or private, respectively.

IcôneIcon AccessibilitéAccessibility DescriptionDescription
Modificateur d’icône « Public » Classe publiquePublic class L’accès n’est pas limité.Access is not restricted.
Modificateur d’icône « Protégé » Classe protégéeProtected class L’accès est limité à la classe conteneur ou aux types dérivés de la classe conteneur.Access is limited to the containing class or types derived from the containing class.
Modificateur d’icône « Interne protégé » Classe interne protégéeProtected internal class L’accès est limité à l’assembly actuel ou aux types dérivés de la classe conteneur.Access is limited to the current assembly or types derived from the containing class.
Modificateur d’icône « Interne » Classe interneInternal class L’accès est limité à l’assembly actuel.Access is limited to the current assembly.
Modificateur d’icône « Privé » Classe privéePrivate class L’accès est limité à la classe conteneur ou aux types dérivés de la classe conteneur dans l’assembly actuel.Access is limited to the containing class or types derived from the containing class within the current assembly. (Disponible depuis C# 7.2.)(Available since C# 7.2.)

Résoudre les problèmes d’IntelliSenseTroubleshoot IntelliSense

Dans certains cas, les options IntelliSense ne fonctionneront peut-être pas comme vous l'attendez.The IntelliSense options may not work as you expect in certain cases.

Le curseur se trouve en dessous d’une erreur de code.The cursor is below a code error. Vous ne pourrez peut-être pas utiliser IntelliSense si une fonction incomplète ou une autre erreur existe dans le code situé au-dessus du curseur, car IntelliSense ne pourra peut-être pas analyser les éléments du code.You might not be able to use IntelliSense if an incomplete function or other error exists in the code above the cursor because IntelliSense might not be able to parse the code elements. Vous pouvez résoudre ce problème en commentant le code applicable.You can resolve this problem by commenting out the applicable code.

Le curseur se trouve dans un commentaire de code.The cursor is in a code comment. Vous ne pouvez pas utiliser IntelliSense si le curseur se trouve dans un commentaire de votre fichier source.You can't use IntelliSense if the cursor is in a comment in your source file.

Le curseur se trouve dans un littéral de chaîne.The cursor is in a string literal. Vous ne pouvez pas utiliser IntelliSense si le curseur se trouve entre les guillemets entourant un littéral de chaîne, comme dans l'exemple suivant :You can't use IntelliSense if the cursor is in the quotation marks around a string literal, as in the following example:

MessageBox( hWnd, "String literal|")

Les options automatiques sont désactivées.The automatic options are turned off. Par défaut, IntelliSense est automatiquement utilisé, mais vous pouvez le désactiver.By default, IntelliSense works automatically, but you can disable it. Même lorsque la saisie semi-automatique des instructions est désactivée, vous pouvez appeler une fonctionnalité IntelliSense.Even if automatic statement completion is disabled, you can invoke an IntelliSense feature.

Voir aussiSee also