IDataObject Interface


Provides the managed definition of the IDataObject interface.

Namespace:   System.Runtime.InteropServices.ComTypes
Assembly:  System (in System.dll)

public interface IDataObject

System_CAPS_pubmethodDAdvise(FORMATETC, ADVF, IAdviseSink, Int32)

Creates a connection between a data object and an advisory sink. This method is called by an object that supports an advisory sink and enables the advisory sink to be notified of changes in the object's data.


Destroys a notification connection that had been previously established.


Creates an object that can be used to enumerate the current advisory connections.


Creates an object for enumerating the FORMATETC structures for a data object. These structures are used in calls to GetData or SetData.

System_CAPS_pubmethodGetCanonicalFormatEtc(FORMATETC, FORMATETC)

Provides a standard FORMATETC structure that is logically equivalent to a more complex structure. Use this method to determine whether two different FORMATETC structures would return the same data, removing the need for duplicate rendering.

System_CAPS_pubmethodGetData(FORMATETC, STGMEDIUM)

Obtains data from a source data object. The GetData method, which is called by a data consumer, renders the data described in the specified FORMATETC structure and transfers it through the specified STGMEDIUM structure. The caller then assumes responsibility for releasing the STGMEDIUM structure.

System_CAPS_pubmethodGetDataHere(FORMATETC, STGMEDIUM)

Obtains data from a source data object. This method, which is called by a data consumer, differs from the GetData method in that the caller must allocate and free the specified storage medium.


Determines whether the data object is capable of rendering the data described in the FORMATETC structure. Objects attempting a paste or drop operation can call this method before calling GetData to get an indication of whether the operation may be successful.

System_CAPS_pubmethodSetData(FORMATETC, STGMEDIUM, Boolean)

Transfers data to the object that implements this method. This method is called by an object that contains a data source.

For more information about the IDataObject interface, see the MSDN Library.

The common language runtime throws an exception when a COM method in native code returns an HRESULT. For more information, see How to: Map HRESULTs and Exceptions.

.NET Framework
Available since 2.0
Return to top