IVsObjectList.EnumClipboardFormats Yöntem

Tanım

Verilen liste öğesinin desteklenen Pano biçimlerini numaralandırmasını ister.

int EnumClipboardFormats(unsigned int index, unsigned int grfFlags, unsigned int celt, std::Array <Microsoft::VisualStudio::Shell::Interop::VSOBJCLIPFORMAT> const & rgcfFormats, std::Array <unsigned int> const & pcActual);
public int EnumClipboardFormats (uint index, uint grfFlags, uint celt, Microsoft.VisualStudio.Shell.Interop.VSOBJCLIPFORMAT[] rgcfFormats, uint[] pcActual);
abstract member EnumClipboardFormats : uint32 * uint32 * uint32 * Microsoft.VisualStudio.Shell.Interop.VSOBJCLIPFORMAT[] * uint32[] -> int
Public Function EnumClipboardFormats (index As UInteger, grfFlags As UInteger, celt As UInteger, rgcfFormats As VSOBJCLIPFORMAT(), Optional pcActual As UInteger()) As Integer

Parametreler

index
UInt32

'ndaki İlgilendiğiniz liste öğesinin dizinini belirtir.

grfFlags
UInt32

'ndaki Çoklu seçim belirtir. Değerler _VSOBJCFFLAGS numaralandırmasından alınır.

celt
UInt32

'ndaki Öğe sayısını belirtir rgcfFormats .

rgcfFormats
VSOBJCLIPFORMAT[]

[in, out] VSOBJCLIPFORMAT Desteklenen biçimleri tanımlayan yapıların dizisini belirtir.

pcActual
UInt32[]

dışı Dizideki biçim sayısına yönelik işaretçi rgcfformats .

Döndürülenler

Int32

Yöntem başarılı olursa, döndürür S_OK . Başarısız olursa, bir hata kodu döndürür.

Açıklamalar

COM Imzası

Vsshell. IDL dosyasından:

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

Ortam üç standart Pano biçimini destekler: CF_NAVINFO , CF_TEXT ve CF_UNICODETEXT . Kendi Pano biçimlerinizi oluşturabilir ve kaydedebilirsiniz. OLE Pano biçimi uygulama ve kaydı hakkında bilgi için bkz Clipboard Formats . msdn Kitaplığı platformu SDK 'sı belge kümesi.

Ortamı, EnumClipboardFormat sürükle bırak ve Kopyala-yapıştır işlemleri için destekleyebileceğiniz Pano biçimlerinin bir listesini almak için s öğesini çağırır. Ortam, EnumClipboardFormats index grfFlags pcActual listenizin sağladığı Pano biçimlerinin sayısını almak için ilk olarak (,, 0, null,) çağırır. Daha sonra bir boyut dizisi ayırır pcActual ve sonra EnumClipboardFormats ( index , grfFlags ,, pcActual rcgfFormats , pcActual ) öğesini çağırır.

Diziyi, rgcfformats VSOBJCLIPFORMAT destekettiğiniz biçimleri içeren yapılar ile doldurabilirsiniz. Her VSOBJCLIPFORMAT yapı biçimi, ortam türünü ve biçimin bileşik bir tane olup olmadığını tanımlar. Bileşik biçimler ile, ortam, çağrıldıktan sonra gerçek işlemeyi yapar GetExtendedClipboardVariant . Aksi takdirde, listenin kendisi üzerinden işleme yapılır GetClipboardFormat . Çoklu seçim durumunda yalnızca bileşik biçimleri destekliyoruz. Bu, ortamın biçimi şu biçimde yazmasına olanak sağlar: <count of items> <xyz variant from selected item1> <xyz variant from selected item2> .

Not

MSDN Kitaplığı platformu SDK 'sı belge kümesi içinde CComVariant:: WriteToStream içinde kapsanmış gibi yalnızca belirli kalıcı değişken türleri desteklenir.

Tek seçim durumunda, nesne listeniz hem geleneksel hem de bileşik biçimleri sağlamak için ücretsizdir ve GetClipboardFormat GetExtendedClipboardVariant her biri için veya için sırasıyla çağrılır.

Not

Sınıf görünümü ve nesne tarayıcısı otomatik olarak bir CF_NAVINFO ve CF_TEXT/CF_UNICODETEXT biçimi sağlar, EnumClipboardFormats Bu nedenle bu değerleri döndürmemelidir.

Şunlara uygulanır