Compartilhar via


IAdviseSink::OnDataChange

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Thismethod aconselha o coletor que uma exibição objeto foi alterado.

Syntax

void OnDataChange( 
  FORMATETC* pFormatetc, 
  STGMEDIUM* pStgmed
);

Parameters

  • pFormatetc
    [no] Ponteiro para o FORMATETC estrutura, que descreve o seguinte sobre o objeto de dados chamado.

    • Formato
    • Dispositivo de destino
    • O processamento
    • Informações de armazenamento
  • pStgmed
    [no] Ponteiro para o STGMEDIUM estrutura, que define a meio de armazenamento (memória global, arquivo em disco, objeto armazenamento, objeto transmitir, objeto GDI ou indefinido) e a propriedade dessa mídia para o objeto de dados chamado.

Return Value

Nenhum.

Remarks

Identificadores de objeto e recipientes de implementar objetos link OnDataChange seja apropriado etapas quando notificado que dados no objeto foi alterado. Eles também devem chamar IDataObject::DAdvise Para configurar de consultoria conexões com os objetos no cujos dados eles estão interessados.

Para obter mais informações sobre como especificar uma de consultoria conexão para objetos dados, consulte DAdvise.

Recipientes que tiram proveito da cache OLE suporte não será necessário registrar para dados-notificações alteração. Isso ocorre porque as informações necessárias para atualização apresentação do contêiner do objeto, incluindo as alterações nos seus dados, são mantidas no armazenar em cache do o objeto.

Para determinar se a plataforma oferece suporte a esta interface, consulte Determinando suporte COM APIs.

Notas para Implementers

Se você implementar OnDataChange Para um contêiner, lembre-se de que esse método é assíncrono e que síncrono fazendo chamadas dentro assíncrono métodos não é válido. Portanto, não é possível chamar IDataObject::GetData Para obter os dados precisará atualização seu objeto.

Em vez disso, qualquer postagem uma mensagem interna, ou invalidar o retângulo para os dados alterados por chamado InvalidateRect e aguardando uma mensagem WM_PAINT. Nesta apontar Você Pode get os dados e atualização de objeto.

Os dados propriamente dita, que é válido somente para a duração do chamar, é passado usando o meio de armazenamento apontado pelo pStgmed. Porque o chamador possui a mídia, o coletor de avisos deve não livre-lo. Além disso, se pStgmed aponta para um IStorage Ou IStream interface, o coletor não deve incremento de contagem de referência.

Requirements

Header objidl.h, objidl.idl
Library oleaut32.lib, uuid.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

IAdviseSink
FORMATETC
IDataObject::DAdvise
IDataObject::GetData
IStorage
IStream
STGMEDIUM

Concepts

Determining Supported COM APIs

Other Resources