Partilhar via


IEEVisualizerDataProvider

Essa interface fornece a capacidade de alterar o valor de um objeto por meio de um visualizador de tipo.

IEEVisualizerDataProvider : IUnknown

Observações para Implementadores

O avaliador da expressão implementa essa interface para oferecer suporte a modificação dos dados em um objeto de propriedade por meio de um visualizador de tipo.

Observações para chamadores

Essa interface é usada na criação de IEEVisualizerService objeto por meio de uma chamada para IEEVisualizerServiceProvider::CreateVisualizerService. Para obter mais detalhes, consulte Visualizando e exibição de dados.

Métodos na ordem de Vtable

Método

Descrição

IEEVisualizerDataProvider::CanSetObjectForVisualizer

Determina se é possível atualizar o objeto (e conseqüentemente, seu valor) que está representando esse visualizador.

IEEVisualizerDataProvider::GetNewObjectForVisualizer

Força uma reavaliação do objeto para esse visualizador.

IEEVisualizerDataProvider::GetObjectForVisualizer

Obtém um objeto existente para esse visualizador (nenhuma avaliação é feita).

IEEVisualizerDataProvider::SetObjectForVisualizer

Atualiza o objeto para esse visualizador, alterando assim o valor que o Visualizador apresenta.

Comentários

O serviço Visualizador (conforme representado pela IEEVisualizerService interface e retornado por IEEVisualizerServiceProvider::CreateVisualizerService) mantém uma referência para a implementação do objeto a IEEVisualizerDataProvider interface. Como resultado, o IEEVisualizerDataProvider interface não deve ser implementado no mesmo objeto que implementa o IDebugProperty2 se esse objeto mantém uma referência para o IEEVisualizerService objeto: resulta de uma referência circular e um deadlock ocorre quando os objetos são destruídos. A abordagem recomendada é implementar IEEVisualizerDataProvider em um objeto separado para o qual o IDebugProperty2 objeto delegados sem chamada IUnknown::AddRef nele.

Requisitos

Cabeçalho: ee.h

Namespace: Microsoft.VisualStudio.Debugger.Interop

Assembly: Microsoft.VisualStudio.Debugger.Interop.dll

Consulte também

Referência

IDebugProperty2

IEEVisualizerService

IEEVisualizerServiceProvider

Conceitos

Interfaces de avaliação de expressão

Visualizando e exibição de dados