Partager via


Hiérarchies dans Visual Studio

L’environnement de développement intégré (IDE) Visual Studio affiche un projet sous forme de hiérarchie. Dans l’IDE, une hiérarchie est une arborescence de nœuds, où chaque nœud a un ensemble de propriétés associées. Une hiérarchie de projet est un conteneur qui contient les éléments du projet, les relations des éléments et les propriétés et commandes associées aux éléments.

Dans Visual Studio, vous gérez les hiérarchies de projet à l’aide de l’interface de hiérarchie. IVsHierarchy L’interface IVsUIHierarchy redirige les commandes que vous appelez à partir d’éléments de projet vers la fenêtre de hiérarchie appropriée au lieu du gestionnaire de commandes standard.

Hiérarchies de projet

Chaque hiérarchie de projet contient des éléments que vous pouvez afficher et modifier. Ces éléments varient en fonction du type de projet. Par exemple, un projet de base de données peut contenir des procédures stockées, des vues de base de données et des tables de base de données. En revanche, un projet de langage de programmation inclut probablement des fichiers sources et des fichiers de ressources pour les bitmaps et les boîtes de dialogue. Les hiérarchies peuvent être imbriquées, ce qui vous offre une certaine flexibilité lors de la création d’une hiérarchie de projet.

Lorsque vous créez un type de projet, le type de projet contrôle l’ensemble complet d’éléments qui peuvent être modifiés dans celui-ci. Toutefois, les projets peuvent contenir des éléments pour lesquels ils ne prennent pas en charge la modification. Par exemple, les projets Visual C++ peuvent contenir des fichiers HTML, même si Visual C++ ne fournit aucun éditeur personnalisé pour le type de fichier HTML.

Les hiérarchies gèrent la persistance des éléments qu’elles contiennent. L’implémentation de la hiérarchie doit contrôler toutes les propriétés spéciales qui affectent la persistance des éléments de la hiérarchie. Par exemple, si les éléments représentent des objets dans un référentiel au lieu de fichiers, l’implémentation de la hiérarchie doit contrôler la persistance de ces objets. L’IDE lui-même dirige la hiérarchie pour enregistrer les éléments en conformité avec l’entrée utilisateur, mais l’IDE ne contrôle aucune action requise pour enregistrer ces éléments. Au lieu de cela, le projet est en contrôle.

Lorsqu’un utilisateur ouvre un élément dans un éditeur, la hiérarchie qui contrôle cet élément est sélectionnée et devient la hiérarchie active. La hiérarchie sélectionnée détermine l’ensemble de commandes disponibles pour agir sur l’élément. Le suivi du focus utilisateur de cette manière permet à la hiérarchie de refléter le contexte actuel de l’utilisateur.