Compartilhar via


Método IVsObjectList.EnumClipboardFormats (UInt32, UInt32, UInt32, VSOBJCLIPFORMAT[], UInt32 )

 

Publicado: abril de 2016

Solicita o determinado item de lista para enumerar seus formatos com suporte na área de transferência.

Namespace:   Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)

Sintaxe

int EnumClipboardFormats(
    uint index,
    uint grfFlags,
    uint celt,
    VSOBJCLIPFORMAT[] rgcfFormats,
    uint[] pcActual
)
int EnumClipboardFormats(
    unsigned int index,
    unsigned int grfFlags,
    unsigned int celt,
    array<VSOBJCLIPFORMAT>^ rgcfFormats,
    array<unsigned int>^ pcActual
)
abstract EnumClipboardFormats : 
        index:uint32 *
        grfFlags:uint32 *
        celt:uint32 *
        rgcfFormats:VSOBJCLIPFORMAT[] *
        pcActual:uint32[] -> int
Function EnumClipboardFormats (
    index As UInteger,
    grfFlags As UInteger,
    celt As UInteger,
    rgcfFormats As VSOBJCLIPFORMAT(),
    pcActual As UInteger()
) As Integer

Parâmetros

  • index
    Type: System.UInt32

    [in] Especifica o índice do item da lista de interesse.

  • celt
    Type: System.UInt32

    [in] Especifica a contagem de elementos de rgcfFormats.

  • pcActual
    Type: System.UInt32[]

    [out] Ponteiro para uma contagem de formatos na rgcfformats matriz.

Valor Retornado

Type: System.Int32

Se o método for bem-sucedido, ele retornará S_OK. Se ele falhar, ele retorna um código de erro.

Comentários

COM assinatura

De vsshell.idl:

HRESULT IVsObjectList::EnumClipboardFormats(
   [in] ULONG Index,
   [in] VSOBJCFFLAGS grfFlags,
   [in] ULONG celt,
   [in, out, size_is(celt)] VSOBJCLIPFORMAT rgcfFormats[],
   [out, optional] ULONG *pcActual
);

O ambiente oferece suporte a três formatos padrão da área de transferência: CF_NAVINFO, CF_TEXT, e CF_UNICODETEXT. Você pode criar e registrar seus próprios formatos da área de transferência. Para obter informações sobre a implementação de formato de área de transferência OLE e o registro, consulte Clipboard Formats no conjunto de documentação do Platform SDK do MSDN Library.

O ambiente chama EnumClipboardFormats para obter uma lista dos formatos de área de transferência que você oferece suporte para operações de arrastar e soltar e copiar e colar. O ambiente primeiro chama EnumClipboardFormats (index, grfFlags, 0, null, pcActual) obter a contagem de formatos da área de transferência de sua lista fornece. Em seguida, aloca uma matriz de tamanho pcActual, e, em seguida, chama EnumClipboardFormats (index, grfFlags, pcActual, rcgfFormats, pcActual).

Preencher o rgcfformats de matriz com VSOBJCLIPFORMAT estruturas contendo os formatos de suporte. Cada VSOBJCLIPFORMAT estrutura identifica o formato, o tipo de mídia, e se o formato é um arquivo composto. Com formatos compostos, o ambiente faz o processamento real depois de chamar GetExtendedClipboardVariant. Caso contrário, a própria lista fará o processamento por meio de GetClipboardFormat. No caso de uma seleção múltipla, você apenas ofereceria suporte aos formatos compostos. Isso permite que o ambiente para o formato de gravação no formulário: < contagem de itens >< xyz variante de item1 selecionado >< xyz variante de item2 selecionado >.

System_CAPS_noteObservação

Somente determinados tipos de VARIANTE persistentes são aceitos conforme abordado nos CComVariant::WriteToStream no conjunto de documentação do Platform SDK do MSDN Library.

No caso de seleção único, a lista de objetos é livre para fornecer formatos tradicionais e compostos e será chamada respectivamente em GetClipboardFormat ou GetExtendedClipboardVariant para cada um.

System_CAPS_noteObservação

Class View e Pesquisador de objetos fornecer automaticamente um CF_NAVINFO e um CF_TEXT/CF_UNICODETEXT Formatar, isso EnumClipboardFormats não deve retornar esses valores.

Confira Também

Interface IVsObjectList
Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao início