Afficher les fichiers à l’aide de la commande Ouvrir un fichierDisplaying Files By Using the Open File Command

Les étapes suivantes décrivent comment l’IDE gère le ouvrir le fichier commande, qui est disponible sur le fichier menu Visual StudioVisual Studio.The following steps describe how the IDE handles the Open File command, which is available on the File menu in Visual StudioVisual Studio. Les étapes décrivent également comment les projets doivent répondre aux appels provenant de cette commande.The steps also describe how projects should respond to calls that originate from this command.

Lorsqu’un utilisateur clique sur le ouvrir le fichier commande le fichier menu et sélectionne un fichier à partir de la ouvrir un fichier boîte de dialogue, la processus suivante se produit.When a user clicks the Open File command on the File menu, and selects a file from the Open File dialog box, the following process occurs.

  1. À l’aide de la table de document en cours d’exécution, l’IDE détermine si le fichier est déjà ouvert dans un projet.Using the running document table, the IDE determines whether the file is already open in a project.

    • Si le fichier est ouvert, l’IDE resurfaces la fenêtre.If the file is open, the IDE resurfaces the window.

    • Si le fichier n’est pas ouvert, l’IDE appelle IsDocumentInProject pour chaque projet pour déterminer le projet qui peut ouvrir le fichier de requête.If the file is not open, the IDE calls IsDocumentInProject to query each project to determine which project can open the file.

      Note

      Dans votre implémentation de projet de IsDocumentInProject, fournissez une valeur de priorité qui indique le niveau auquel votre projet s’ouvre le fichier.In your project implementation of IsDocumentInProject, provide a priority value that indicates the level at which your project opens the file. Les valeurs de priorité sont fournies dans le VSDOCUMENTPRIORITY énumération.Priority values are provided in the VSDOCUMENTPRIORITY enumeration.

  2. Chaque projet répond avec un niveau de priorité qui indique l’importance qu’il place sur en cours pour ouvrir le fichier projet.Each project responds with a priority level that indicates the importance it places on being the project to open the file.

  3. L’IDE utilise les critères suivants pour déterminer le projet qui ouvre le fichier :The IDE uses the following criteria to determine which project opens the file:

    • Le projet qui répond à la priorité la plus élevée (DP_Intrinsic) s’ouvre le fichier.The project that responds with the highest priority (DP_Intrinsic) opens the file. Si plusieurs projets répond avec cette priorité, le premier projet répondre ouvre le fichier.If more than one project responds with this priority, the first project to respond opens the file.

    • Si aucun répond de projet avec la priorité la plus élevée (DP_Intrinsic), mais tous les projets y répondre avec la priorité de celui-ci, inférieure, le projet actif ouvre le fichier.If no project responds with the highest priority (DP_Intrinsic), but all projects respond with the same, lower priority, the active project opens the file. Si aucun projet n’est actif, le premier projet répondre ouvre le fichier.If no project is active, the first project to respond opens the file.

    • Si aucun projet ne revendications possession du fichier (DP_Unsupported), le projet fichiers divers ouvre le fichier.If no project claims ownership of the file (DP_Unsupported), the Miscellaneous Files project opens the file.

      Si une instance du projet fichiers divers est créée, le projet répond toujours avec la valeur DP_CanAddAsExternal.If an instance of the Miscellaneous Files project is created, the project always responds with the value DP_CanAddAsExternal. Cette valeur indique que le projet peut ouvrir le fichier.This value indicates that the project can open the file. Ce projet est utilisé pour héberger les fichiers ouverts ne sont pas dans un autre projet.This project is used to house open files that are not in any other project. La liste des éléments dans ce projet n’est pas persistante ; ce projet n’est visible dans l’Explorateur de solutions uniquement lorsqu’il est utilisé pour ouvrir un fichier.The list of items in this project is not persisted; this project is visible in Solution Explorer only when it is used to open a file.

      Si le projet fichiers divers n’indique pas qu’il peut ouvrir le fichier, une instance du projet n’a pas été créée.If the Miscellaneous Files project does not indicate that it can open the file, an instance of the project has not been created. Dans ce cas, l’IDE crée une instance du projet fichiers divers et indique le projet à ouvrir le fichier.In this case, the IDE creates an instance of the Miscellaneous Files project and tells the project to open the file.

  4. Dès que l’IDE détermine quel projet ouvre le fichier, elle appelle la OpenItem méthode sur ce projet.As soon as the IDE determines which project opens the file, it calls the OpenItem method on that project.

  5. Ensuite, le projet a la possibilité d’ouvrir le fichier à l’aide d’un éditeur spécifique au projet ou un éditeur standard.The project then has the option of opening the file by using a project-specific editor or a standard editor. Pour plus d’informations, consultez Comment : ouvrir les éditeurs spécifique au projet et Comment : ouvrir les éditeurs Standard, respectivement.For more information, see How to: Open Project-Specific Editors and How to: Open Standard Editors, respectively.

Voir aussiSee Also

Afficher les fichiers à l’aide de l’ouvrir avec la commande Displaying Files By Using the Open With Command
Ouvrir et enregistrer des éléments de projet Opening and Saving Project Items
Comment : ouvrir les éditeurs spécifiques au projet How to: Open Project-Specific Editors
Guide pratique pour ouvrir des éditeurs standardHow to: Open Standard Editors