Método IVsObjectList2.EnumClipboardFormats (UInt32, UInt32, UInt32, VSOBJCLIPFORMAT[], UInt32 )
Publicado: junho 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.8.0 (em Microsoft.VisualStudio.Shell.Interop.8.0.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.
grfFlags
Type: System.UInt32[in] Especifica várias seleções. Valores são obtidos do _VSOBJCFFLAGS enumeração.
celt
Type: System.UInt32[in] Especifica a contagem de elementos de rgcfFormats.
rgcfFormats
Type: Microsoft.VisualStudio.Shell.Interop.VSOBJCLIPFORMAT[][no, out] Especifica uma matriz de VSOBJCLIPFORMAT estruturas definindo os formatos com suporte.
pcActual
Type: System.UInt32[][out] Ponteiro para uma contagem de formatos na rgcfformats matriz realmente retornado.
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 vsshell80.idl:
[C++]
HRESULT IVsObjectList2::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 faz a renderização por meio de GetClipboardFormat. No caso de várias seleções, 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 >.
Há suporte para somente determinados tipos de VARIANTE podem ser persistente. Para obter mais informações, consulte CComVariant::WriteToStream.
No caso de única seleção, sua lista de objetos é livre para fornecer formatos tradicionais e compostos e é chamada respectivamente em GetClipboardFormat ou GetExtendedClipboardVariant para cada um.
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 IVsObjectList2
Namespace Microsoft.VisualStudio.Shell.Interop
Retornar ao início