Implémenter des visualiseurs de type et des visionneuses personnalisées

Important

Dans Visual Studio 2015, cette façon d’implémenter des évaluateurs d’expression est déconseillée. Pour plus d’informations sur l’implémentation d’évaluateurs d’expression CLR, consultez l’exemple d’évaluateur d’expression CLR et d’évaluateur d’expression managée.

Les visualiseurs de types et les visionneuses personnalisées permettent à un utilisateur d’afficher les données d’un type particulier d’une manière plus significative qu’un simple vidage hexadécimal de nombres. Un évaluateur d’expression (EE) peut associer des visionneuses personnalisées à des types spécifiques de données ou de variables. Ces visionneuses personnalisées sont implémentées par l’EE. L’EE peut également prendre en charge les visualiseurs de type externe, qui peuvent provenir d’un autre fournisseur tiers ou même de l’utilisateur final.

Discussion

Visualiseurs de types

Visual Studio demande la liste des visualiseurs de type et des visionneuses personnalisées pour que chaque objet s’affiche dans une fenêtre espionne. Un évaluateur d’expression (EE) fournit une telle liste pour chaque type pour lequel il souhaite prendre en charge les visualiseurs de types et les visionneuses personnalisées. Les appels à GetCustomViewerCount et GetCustomViewerList démarrent l’ensemble du processus d’accès aux visualiseurs de types et aux visionneuses personnalisées (voir Visualisation et affichage des données pour plus d’informations sur la séquence d’appels).

Visionneuses personnalisées

Les visionneuses personnalisées sont implémentées dans l’EE pour un type de données spécifique et sont représentées par l’interface IDebugCustomViewer . Une visionneuse personnalisée n’est pas aussi flexible qu’un visualiseur de type, car elle est disponible uniquement lorsque l’EE qui implémente cette visionneuse personnalisée particulière s’exécute. L’implémentation d’une visionneuse personnalisée est plus simple que l’implémentation de la prise en charge des visualiseurs de type. Toutefois, la prise en charge des visualiseurs de types offre une flexibilité maximale à l’utilisateur final pour visualiser ses données. Le reste de cette discussion concerne uniquement les visualiseurs de type.

Interfaces

L’EE implémente les interfaces suivantes pour prendre en charge les visualiseurs de type, à consommer par Visual Studio :