Comparteix a través de


IntelliSense en Visual Studio

IntelliSense es una ayuda de finalización de código que incluye características que le ayudarán a obtener más información sobre el código que usa, realizar un seguimiento de los parámetros que escriba y agregar llamadas a propiedades y métodos con solo unas pocas pulsaciones de tecla.

Estas características incluyen:

Muchos aspectos de IntelliSense son específicos del lenguaje. Para obtener más información sobre IntelliSense para diferentes idiomas, consulte los artículos enumerados en la sección contenido relacionado.

Lista de miembros

Después de escribir un carácter desencadenador (por ejemplo, un punto (.) en código administrado o :: en C++), aparece una lista de los miembros válidos de un tipo (o espacio de nombres). Si continúa escribiendo caracteres, la lista se filtra para incluir solo los miembros que comienzan con esos caracteres o donde el principio de cualquier palabra dentro del nombre comienza con esos caracteres. IntelliSense también efectúa búsquedas de coincidencias camel case, por lo que puede escribir la primera letra de cada palabra con camel case del nombre del miembro para ver las coincidencias.

Después de seleccionar un elemento, puede insertarlo en el código presionando Tab o escribiendo un espacio. Si selecciona un elemento y escribe un punto, el elemento aparece seguido del punto, con lo que se muestra otra lista de miembros. Al seleccionar un elemento pero antes de insertarlo, obtendrá información rápida para el elemento.

En la lista de miembros, el icono de la izquierda representa el tipo de miembro, como el espacio de nombres, la clase, la función o la variable. La lista puede ser larga, por lo que puede presionar PgUp y pgDn para subir o bajar en la lista.

Captura de pantalla de la característica de miembros de lista de IntelliSense.

Captura de pantalla de la característica de miembros de lista de IntelliSense.

Puede invocar manualmente la característica Lista de miembros escribiendo Ctrl+J, seleccionando Editar>IntelliSense>Lista de miembroso eligiendo el botón Lista de miembros en la barra de herramientas del editor. Cuando se invoca en una línea en blanco o fuera de un ámbito reconocible, la lista muestra símbolos en el espacio de nombres global.

Para desactivar la Lista de Miembros de forma predeterminada, de manera que no aparezca a menos que se invoque específicamente, vaya a Herramientas>Opciones>Editor de Texto>Todos los Idiomas y anule la selección de Lista Automática de Miembros. Si quiere desactivar la lista de miembros únicamente para un lenguaje concreto, vaya a la configuración General de ese lenguaje.

También puede cambiar al modo de sugerencia, en el que solo se inserta el texto que escribe en el código. Por ejemplo, si escribe un identificador que no está en la lista y presiona Pestaña, la entrada reemplaza el identificador escrito en modo de autocompletado. Para alternar entre el modo de finalización y el modo de sugerencia, presione Ctrl+Alt+Espacioo elija Editar>IntelliSense>Alternar modo de finalización.

También puede cambiar al modo de sugerencia, en el que solo se inserta el texto que escribe en el código. Por ejemplo, si escribe un identificador que no está en la lista y presiona Tab, en modo de finalización la entrada reemplazaría el identificador que ha escrito. Para alternar entre el modo de finalización y el modo de sugerencia, presione Ctrl+Alt+Espacioo elija Editar>IntelliSense>Cambiar entre la finalización automática y de solo tabulación de IntelliSense.

Información de parámetros

información de parámetros proporciona información sobre el número, los nombres y los tipos de parámetros requeridos por un método, un parámetro de tipo genérico de atributo (en C#) o una plantilla (en C++).

El parámetro en negrita indica el parámetro siguiente que es necesario mientras escribe la función. En el caso de funciones sobrecargadas, se puede utilizar las teclas de flecha Arriba y Abajo para ver información de parámetros alternativos para las sobrecargas de funciones.

Captura de pantalla que muestra la función de información de parámetros de IntelliSense.

Captura de pantalla de la característica Información de parámetros de IntelliSense.

Al anotar funciones y parámetros con comentarios de documentación XML, los comentarios se muestran como Información de parámetros. Para obtener más información, vea Comentarios sobre el código XML de suministro.

Para invocar manualmente la Información de Parámetros, elija Editar>IntelliSense>Información de Parámetros, presione Ctrl+Mayús+Espacio, o seleccione el botón Información de Parámetros en la barra de herramientas del editor.

Información rápida

Información rápida muestra la declaración completa de cualquier identificador en tu código.

Captura de pantalla que muestra la característica información rápida de IntelliSense.

Captura de pantalla de la característica Información rápida de IntelliSense.

Al seleccionar un miembro en el cuadro Lista de miembros, también aparece información rápida.

Captura de pantalla de la información rápida y de parámetros de IntelliSense.

Captura de pantalla de la característica Información rápida e Información de parámetros de IntelliSense.

Para invocar manualmente Información Rápida, elija Editar>IntelliSense>Información Rápida, presione Ctrl+K, Ctrl+I, o elija el botón Información Rápida en la barra de herramientas del editor.

Si una función está sobrecargada, Es posible que IntelliSense no muestre información para todas las formas de la sobrecarga.

Puede desactivar Quick Info para el código de C++ navegando a Herramientas>Opciones>Editor de texto>C/C++>Avanzadoy establecer Auto Quick Info en false.

Palabra completa

Palabra completa completa el resto de una variable, comando o nombre de función después que haya escrito suficientes caracteres como para reconocerlo. Para invocar Palabra completa, elija Editar>IntelliSense>Palabra completa, presionando Ctrl+Espacioo eligiendo el botón Palabra completa de la barra de herramientas del editor.

Opciones de IntelliSense

Las opciones de IntelliSense están activadas de forma predeterminada. Para desactivarlas, haga clic en Herramientas>Opciones>Editor de texto>Todo los idiomas y anule la selección de Información de parámetros o de Lista de miembros automática si no quiere usar la característica Lista de miembros.

Sugerencia

Si desea cambiar la apariencia de los elementos de la interfaz de usuario en Visual Studio, vaya a Tools>Options>Environment>Fonts and Colors. Para obtener más información sobre esta configuración y cómo interactuar con ellos, vea Fuentes y colores, Entorno, Opciones cuadro de diálogo.

Iconos de IntelliSense

Los iconos de IntelliSense pueden transmitir significado adicional con modificadores de icono. Estas son estrellas, corazones y candados superpuestos sobre el icono del objeto que indican protegido, interno o privado, respectivamente.

Iconos Accesibilidad Descripción
modificador de icono público Clase pública El acceso no está restringido.
modificador de icono protegido Clase protegida El acceso se limita a la clase contenedora o a los tipos derivados de ella.
Modificador de icono interno protegido Clase interna protegida El acceso está limitado al ensamblado actual o a tipos derivados de la clase contenedora.
modificador de icono interno Clase interna El acceso está limitado al ensamblado actual.
modificador de icono privado Clase privada El acceso se limita a la clase que contiene o a tipos derivados de la clase que contiene dentro del ensamblado actual. (Disponible desde C# 7.2).

Solución de problemas de IntelliSense

Es posible que las opciones de IntelliSense no funcionen como se espera en determinados casos.

  • El cursor está debajo de un error de código: es posible que no pueda usar IntelliSense si existe una función incompleta u otro error en el código anterior al cursor porque IntelliSense podría no poder analizar los elementos de código. Puede resolver este problema comentando el código aplicable.

  • El cursor está en un comentario de código: no puede usar IntelliSense si el cursor está en un comentario en el archivo de origen.

  • El cursor está en un literal de cadena: no puede usar IntelliSense si el cursor está entre comillas alrededor de un literal de cadena, como en el ejemplo siguiente:

    MessageBox( hWnd, "String literal|")
    
  • Las opciones automáticas están desactivadas: De forma predeterminada, IntelliSense funciona automáticamente, pero puede deshabilitarla. Incluso si la finalización automática de instrucciones está deshabilitada, puede invocar una característica de IntelliSense.