Interface IVisualizerObjectProvider
Namespace: Microsoft.VisualStudio.DebuggerVisualizers
Assembly: Microsoft.VisualStudio.DebuggerVisualizers (em Microsoft.VisualStudio.DebuggerVisualizers.dll)
Sintaxe
'Declaração
Public Interface IVisualizerObjectProvider
public interface IVisualizerObjectProvider
public interface class IVisualizerObjectProvider
type IVisualizerObjectProvider = interface end
public interface IVisualizerObjectProvider
O tipo IVisualizerObjectProvider expõe os membros a seguir.
Propriedades
Nome | Descrição | |
---|---|---|
IsObjectReplaceable |
Superior
Métodos
Nome | Descrição | |
---|---|---|
GetData | ||
GetObject | ||
ReplaceData | ||
ReplaceObject | ||
TransferData | ||
TransferObject |
Superior
Comentários
Um visualizer é um pequeno programa que o depurador Visual Studio usa para exibir, ou seja, Visualizar, um objeto de um tipo de dados específicos de modo significativo. Para visualizar um objeto, um visualizador usa um código que é executado no processo de depurador (o lado do depurador) e o código no processo que está sendo depurado (o lado a ser depurado).
O debuggee side e debugger side se comunicam entre si usando VisualizerObjectSource e IVisualizerObjectProvider.
O lado a ser depurado usa VisualizerObjectSource para especificar um VisualizerObjectSource o objeto para o lado do depurador. O lado do depurador solicita e recebe essas informações chamando métodos na IVisualizerObjectProvider interface.
Um visualizer pode editar, bem como exibir os dados. Se seu visualizador oferece suporte a edição de dados, você deve substituir os dados inteiramente chamando ReplaceData ou ReplaceObject ou transferir dados de volta para o elemento a ser depurado usando TransferData ou TransferObject. Se você desejar salvar os dados de volta, você também precisará criar sua própria fonte de objeto.
Exemplos
public class DebuggerSide : DialogDebuggerVisualizer
{
override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
{
MessageBox.Show(objectProvider.GetObject().ToString());
}
// . . . Other methods omitted for clarity.
}