Compartir a través de


IVsExpansionManager (Interfaz)

Representa el administrador de extensiones, que sabe cómo buscar y mostrar listas de fragmentos de código para un idioma determinado de codificación.

Espacio de nombres:  Microsoft.VisualStudio.TextManager.Interop
Ensamblado:  Microsoft.VisualStudio.TextManager.Interop.8.0 (en Microsoft.VisualStudio.TextManager.Interop.8.0.dll)

Sintaxis

'Declaración
<GuidAttribute("CA09E5EA-FEE7-4B52-AFE6-8EA2EC53F681")> _
<InterfaceTypeAttribute()> _
Public Interface IVsExpansionManager
[GuidAttribute("CA09E5EA-FEE7-4B52-AFE6-8EA2EC53F681")]
[InterfaceTypeAttribute()]
public interface IVsExpansionManager
[GuidAttribute(L"CA09E5EA-FEE7-4B52-AFE6-8EA2EC53F681")]
[InterfaceTypeAttribute()]
public interface class IVsExpansionManager
[<GuidAttribute("CA09E5EA-FEE7-4B52-AFE6-8EA2EC53F681")>]
[<InterfaceTypeAttribute()>]
type IVsExpansionManager =  interface end
public interface IVsExpansionManager

El tipo IVsExpansionManager expone los siguientes miembros.

Métodos

  Nombre Descripción
Método público EnumerateExpansions Recupera una lista de fragmentos de código del lenguaje que codifica especificado.
Método público GetExpansionByShortcut Recupera el título y la ruta de acceso a un fragmento de código con el nombre de acceso directo.
Método público GetSnippetShortCutKeybindingState Infraestructura. Determina si una clave se ha enlazado “invoca el comando de acceso directo From snippet”.
Método público GetTokenPath Devuelve la ruta de acceso a la ubicación especificada.
Método público InvokeInsertionUI Muestra una lista de IntelliSense de fragmentos de código que se pueden insertar en el origen mediante el objeto proporcionado de IVsExpansionClient .

Arriba

Comentarios

El administrador de extensión es una interfaz auxiliar que proporciona acceso a información sobre los fragmentos de código. Esta interfaz puede mostrar una lista de fragmentos de código que se inserten en un punto determinado en un documento.

Notas para los implementadores

Esta interfaz se implementa por Visual Studio.

Notas para los llamadores

Esta interfaz se obtiene llamando al método GetExpansionManager en la interfaz de IVsTextManager2 .

Ejemplos

Este ejemplo muestra cómo recuperar la interfaz de IVsExpansionManager con un proveedor de servicios.

using System;
using System.Runtime.InteropServices;
using Microsoft.VisualStudio;
using Microsoft.VisualStudio.TextManager.Interop;
using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider;

namespace MyPackage
{
    public class MyClass
    {
        public object GetService(IOleServiceProvider serviceProvider,
                                 Guid serviceGuid,
                                 Guid interfaceGuid)
        {
            IntPtr pUnknown = IntPtr.Zero;
            object unknown = null;
            int hr = serviceProvider.QueryService(ref serviceGuid,
                                    ref interfaceGuid,
                                    out pUnknown);
            if (ErrorHandler.Succeeded(hr))
            {
                unknown = Marshal.GetObjectForIUnknown(pUnknown);
            }
            return unknown;
        }


        private IVsExpansionManager GetExpansionManager(IOleServiceProvider serviceProvider)
        {
            IVsExpansionManager expansionManager = null;
            IVsTextManager textManager;
            textmanager = (IVsTextManager)this.GetService(serviceProvider,
                                                          typeof(SVsTextManager).GUID,
                                                          typeof(IVsTextManager).GUID);
            if (textManager != null)
            {
                IVsTextManager2 textManager2 = (IVsTextManager2)textManager;
                if (textManager2 != null)
                {
                    textManager2.GetExpansionManager(out expansionManager);
                }
            }
        }
        return expansionManager;
    }
}

Vea también

Referencia

Microsoft.VisualStudio.TextManager.Interop (Espacio de nombres)