Afficher des fichiers à l’aide de la commande Ouvrir un fichier

Les étapes suivantes décrivent comment l’IDE gère la commande Ouvrir un fichier , qui est disponible dans le menu Fichier dans Visual Studio. Les étapes décrivent également comment les projets doivent répondre aux appels provenant de cette commande.

Lorsqu’un utilisateur clique sur la commande Ouvrir un fichier dans le menu Fichier et sélectionne un fichier dans la boîte de dialogue Ouvrir un fichier, le processus suivant se produit :

  1. À l’aide de la table de documents en cours d’exécution, l’IDE détermine si le fichier est déjà ouvert dans un projet.

    • Si le fichier est ouvert, l’IDE ressurface la fenêtre.

    • Si le fichier n’est pas ouvert, l’IDE appelle IsDocumentInProject pour interroger chaque projet afin de déterminer quel projet peut ouvrir le fichier.

      Remarque

      Dans l’implémentation de IsDocumentInProjectvotre projet, fournissez une valeur de priorité qui indique le niveau auquel votre projet ouvre le fichier. Les valeurs de priorité sont fournies dans l’énumération VSDOCUMENTPRIORITY .

  2. Chaque projet répond avec un niveau de priorité qui indique l’importance qu’il place sur le projet pour ouvrir le fichier.

  3. L’IDE utilise les critères suivants pour déterminer quel projet ouvre le fichier :

    • Le projet qui répond avec la priorité la plus élevée (DP_Intrinsic) ouvre le fichier. Si plusieurs projets répondent avec cette priorité, le premier projet à répondre ouvre le fichier.

    • Si aucun projet ne répond avec la priorité la plus élevée (DP_Intrinsic), mais que tous les projets répondent avec la même priorité inférieure, le projet actif ouvre le fichier. Si aucun projet n’est actif, le premier projet à répondre ouvre le fichier.

    • Si aucune revendication de projet n’est propriétaire du fichier (DP_Unsupported), le projet Fichiers divers ouvre le fichier.

      Si une instance du projet Fichiers divers est créée, le projet répond toujours avec la valeur DP_CanAddAsExternal. Cette valeur indique que le projet peut ouvrir le fichier. Ce projet est utilisé pour héberger des fichiers ouverts qui ne figurent pas dans un autre projet. La liste des éléments de ce projet n’est pas conservée ; ce projet est visible dans Explorateur de solutions uniquement lorsqu’il est utilisé pour ouvrir un fichier.

      Si le projet Fichiers divers n’indique pas qu’il peut ouvrir le fichier, une instance du projet n’a pas été créée. Dans ce cas, l’IDE crée une instance du projet Divers fichiers et indique au projet d’ouvrir le fichier.

  4. Dès que l’IDE détermine quel projet ouvre le fichier, il appelle la OpenItem méthode sur ce projet.

  5. Le projet a ensuite la possibilité d’ouvrir le fichier à l’aide d’un éditeur spécifique au projet ou d’un éditeur standard. Pour plus d’informations, consultez How to : Open project-specific editors and How to : Open standard editors, respectivement.