Klasa IDataObjectImpl
Ta klasa udostępnia metody obsługi ujednoliconego transferu danych i zarządzania połączeniami.
Ważne
Tej klasy i jej składowych nie można używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows.
Składnia
template<class T>
class IDataObjectImpl
Parametry
T
Klasa pochodząca z IDataObjectImpl
klasy .
Elementy członkowskie
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
IDataObjectImpl::D Advise | Ustanawia połączenie między obiektem danych a ujściem doradcy. Dzięki temu ujście doradcy może otrzymywać powiadomienia o zmianach w obiekcie. |
IDataObjectImpl::D Unadvise | Przerywa połączenie wcześniej ustanowione za pośrednictwem polecenia DAdvise . |
IDataObjectImpl::EnumDAdvise | Tworzy moduł wyliczający do iterowania za pośrednictwem bieżących połączeń doradczych. |
IDataObjectImpl::EnumFormatEtc | Tworzy moduł wyliczający do iterowania po FORMATETC strukturach obsługiwanych przez obiekt danych. Implementacja ATL zwraca E_NOTIMPL. |
IDataObjectImpl::FireDataChange | Wysyła powiadomienie o zmianie z powrotem do każdego doradcy ujścia. |
IDataObjectImpl::GetCanonicalFormatEtc | Pobiera logicznie równoważną FORMATETC strukturę do tej, która jest bardziej złożona. Implementacja ATL zwraca E_NOTIMPL. |
IDataObjectImpl::GetData | Transferuje dane z obiektu danych do klienta. Dane są opisywane w FORMATETC strukturze i przesyłane za pomocą STGMEDIUM struktury. |
IDataObjectImpl::GetDataHere | Podobnie jak GetData , z wyjątkiem klienta musi przydzielić STGMEDIUM strukturę. Implementacja ATL zwraca E_NOTIMPL. |
IDataObjectImpl::QueryGetData | Określa, czy obiekt danych obsługuje określoną FORMATETC strukturę do przesyłania danych. Implementacja ATL zwraca E_NOTIMPL. |
IDataObjectImpl::SetData | Transferuje dane z klienta do obiektu danych. Implementacja ATL zwraca E_NOTIMPL. |
Uwagi
Interfejs IDataObject udostępnia metody obsługi ujednoliconego transferu danych. IDataObject
używa standardowych struktur formatowania FORMATETC i STGMEDIUM do pobierania i przechowywania danych.
IDataObject
Zarządza również połączeniami, aby doradzać ujściom obsługę powiadomień o zmianie danych. Aby klient odbierał powiadomienia o zmianie danych z obiektu danych, klient musi zaimplementować interfejs IAdviseSink na obiekcie nazywanym ujściem doradcy. Gdy następnie klient wywołuje IDataObject::DAdvise
metodę , zostanie nawiązane połączenie między obiektem danych a ujściem doradcy.
Klasa IDataObjectImpl
zapewnia domyślną implementację IDataObject
i implementuje IUnknown
, wysyłając informacje do urządzenia zrzutu w kompilacjach debugowania.
Powiązane artykuły ATL Tutorial, Creating an ATL Project (Samouczek dotyczący tworzenia projektu ATL)
Hierarchia dziedziczenia
IDataObject
IDataObjectImpl
Wymagania
Nagłówek: atlctl.h
IDataObjectImpl::D Advise
Ustanawia połączenie między obiektem danych a ujściem doradcy.
HRESULT DAdvise(
FORMATETC* pformatetc,
DWORD advf,
IAdviseSink* pAdvSink,
DWORD* pdwConnection);
Uwagi
Dzięki temu ujście doradcy może otrzymywać powiadomienia o zmianach w obiekcie.
Aby zakończyć połączenie, wywołaj metodę DUnadvise.
Zobacz IDataObject::D Advise w zestawie Windows SDK.
IDataObjectImpl::D Unadvise
Przerywa połączenie wcześniej ustanowione za pośrednictwem usługi DAdvise.
HRESULT DUnadvise(DWORD dwConnection);
Uwagi
Zobacz IDataObject::D Unadvise w zestawie Windows SDK.
IDataObjectImpl::EnumDAdvise
Tworzy moduł wyliczający do iterowania za pośrednictwem bieżących połączeń doradczych.
HRESULT DAdvise(
FORMATETC* pformatetc,
DWORD advf,
IAdviseSink* pAdvSink,
DWORD* pdwConnection);
Uwagi
Zobacz IDataObject::EnumDAdvise w zestawie Windows SDK.
IDataObjectImpl::EnumFormatEtc
Tworzy moduł wyliczający do iterowania po FORMATETC
strukturach obsługiwanych przez obiekt danych.
HRESULT EnumFormatEtc(
DWORD dwDirection,
IEnumFORMATETC** ppenumFormatEtc);
Uwagi
Zobacz IDataObject::EnumFormatEtc w zestawie Windows SDK.
Wartość zwracana
Zwraca E_NOTIMPL.
IDataObjectImpl::FireDataChange
Wysyła powiadomienie o zmianie z powrotem do każdego doradcy, który jest obecnie zarządzany.
HRESULT FireDataChange();
Wartość zwracana
Standardowa wartość HRESULT.
IDataObjectImpl::GetCanonicalFormatEtc
Pobiera logicznie równoważną FORMATETC
strukturę do tej, która jest bardziej złożona.
HRESULT GetCanonicalFormatEtc(FORMATETC* pformatetcIn, FORMATETC* pformatetcOut);
Wartość zwracana
Zwraca E_NOTIMPL.
Uwagi
Zobacz IDataObject::GetCanonicalFormatEtc w zestawie Windows SDK.
IDataObjectImpl::GetData
Transferuje dane z obiektu danych do klienta.
HRESULT GetData(
FORMATETC* pformatetcIn,
STGMEDIUM* pmedium);
Uwagi
Parametr pformatetcIn musi określać typ nośnika magazynu TYMED_MFPICT.
Zobacz IDataObject::GetData w zestawie Windows SDK.
IDataObjectImpl::GetDataHere
Podobnie jak GetData
, z wyjątkiem klienta musi przydzielić STGMEDIUM
strukturę.
HRESULT GetDataHere(
FORMATETC* pformatetc,
STGMEDIUM* pmedium);
Wartość zwracana
Zwraca E_NOTIMPL.
Uwagi
Zobacz IDataObject::GetDataHere w zestawie Windows SDK.
IDataObjectImpl::QueryGetData
Określa, czy obiekt danych obsługuje określoną FORMATETC
strukturę do przesyłania danych.
HRESULT QueryGetData(FORMATETC* pformatetc);
Wartość zwracana
Zwraca E_NOTIMPL.
Uwagi
Zobacz IDataObject::QueryGetData w zestawie Windows SDK.
IDataObjectImpl::SetData
Transferuje dane z klienta do obiektu danych.
HRESULT SetData(
FORMATETC* pformatetc,
STGMEDIUM* pmedium,
BOOL fRelease);
Wartość zwracana
Zwraca E_NOTIMPL.
Uwagi
Zobacz IDataObject::SetData w zestawie Windows SDK.