Ouvrir des éditeurs pour les documents ouverts

Avant d’ouvrir une fenêtre de document, le projet doit d’abord déterminer si le fichier est déjà ouvert dans la fenêtre de document pour un autre éditeur. Le fichier peut être ouvert dans un éditeur spécifique au projet ou dans l’un des éditeurs standard inscrits auprès de Visual Studio.

Ouvrir un éditeur spécifique au projet

Utilisez la procédure suivante pour ouvrir un éditeur spécifique au projet pour un fichier déjà ouvert.

Pour ouvrir un éditeur spécifique au projet pour un fichier ouvert

  1. Appelez la méthode IsDocumentOpen .

    Cet appel retourne des pointeurs vers la hiérarchie, l’élément de hiérarchie et le cadre de fenêtre du document, le cas échéant.

  2. Si le document est ouvert, le projet doit case activée pour voir si seul un objet de données de document existe ou si un objet d’affichage de document est également présent.

    • Si un objet d’affichage de document existe et qu’il s’agit d’un autre élément de hiérarchie ou de hiérarchie, le projet utilise le pointeur vers le cadre de la fenêtre de l’affichage pour ressurgiser la fenêtre existante.

    • Si un objet d’affichage de document existe et que cet affichage concerne la même hiérarchie et l’élément de hiérarchie, le projet peut ouvrir une deuxième vue s’il peut s’attacher à l’objet de données de document sous-jacent. Sinon, le projet doit utiliser le pointeur vers le cadre de la fenêtre de la vue pour ressurfacer la fenêtre existante.

    • Si seul l’objet de données de document existe, le projet doit déterminer s’il peut utiliser l’objet de données de document pour son affichage. Si l’objet de données de document est compatible, suivez les étapes décrites dans Ouvrir un éditeur spécifique au projet.

      Si l’objet de données de document n’est pas compatible, une erreur doit être affichée à l’utilisateur qui indique que le fichier est actuellement en cours d’utilisation. Cette erreur ne doit être affichée que dans des cas temporaires, par exemple lorsqu’un fichier est compilé en même temps que l’utilisateur tente d’ouvrir le fichier à l’aide d’un éditeur autre que l’éditeur de texte principal de Visual Studio. L’éditeur de texte principal peut partager l’objet de données de document avec le compilateur.

  3. Si le document n’est pas ouvert, car il n’existe pas d’objet de données de document ou d’objet d’affichage de document, effectuez les étapes décrites dans Ouvrir un éditeur spécifique au projet.

Ouvrir un éditeur standard

Utilisez la procédure suivante pour ouvrir un éditeur standard pour un fichier déjà ouvert.

Pour ouvrir un éditeur standard pour un fichier ouvert

  1. Appelez OpenStandardEditor.

    Cette méthode vérifie d’abord que le document n’est pas déjà ouvert en appelant IsDocumentOpen. Si le document est déjà ouvert, sa fenêtre d’éditeur est ressurcée.

  2. Si le document n’est pas ouvert, effectuez les étapes décrites dans How to : Open standard editors.