IVsProject2.OpenItem(UInt32, Guid, IntPtr, IVsWindowFrame) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ouvre un élément dans le projet.
public:
int OpenItem(System::UInt32 itemid, Guid % rguidLogicalView, IntPtr punkDocDataExisting, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsWindowFrame ^ % ppWindowFrame);
public int OpenItem (uint itemid, ref Guid rguidLogicalView, IntPtr punkDocDataExisting, out Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame ppWindowFrame);
abstract member OpenItem : uint32 * Guid * nativeint * IVsWindowFrame -> int
Public Function OpenItem (itemid As UInteger, ByRef rguidLogicalView As Guid, punkDocDataExisting As IntPtr, ByRef ppWindowFrame As IVsWindowFrame) As Integer
Paramètres
- itemid
- UInt32
[in] Identificateur de l'élément à ouvrir. Doit être VSITEMID_ROOT ou tout autre identificateur d'élément valide. Consultez l'énumération VSITEMID.
- rguidLogicalView
- Guid
[in] Identificateur unique de l'affichage logique. Si non égal à GUID_NULL, indique un type spécifique de vue à créer. Pour plus d’informations, consultez LOGVIEWID.
- punkDocDataExisting
- IntPtr
[in] Pointeur vers l'objet de données de document de l'élément à ouvrir. Si l’appelant de OpenItem avait un pointeur vers l’objet de données de document, il le passerait dans le punkDocDataExisting paramètre. Si l'appelant sait que l'objet de données du document n'est pas ouvert, il passe la valeur null. Si l'appelant ne sait pas si l'objet de données du document est ouvert ou s'il ne souhaite pas le rechercher dans le RDT, il peut passer la valeur DOCDATAEXISTING_UNKNOWN. Si cette valeur est passée, OpenStandardEditor(UInt32, String, Guid, String, IVsUIHierarchy, UInt32, IntPtr, IServiceProvider, IVsWindowFrame) recherche la valeur dans la table de documents en cours d'exécution (RDT) en appelant FindAndLockDocument(UInt32, String, IVsHierarchy, UInt32, IntPtr, UInt32) (RDT_EditLock) pour déterminer si le fichier (DocData) est déjà ouvert.
- ppWindowFrame
- IVsWindowFrame
[out] Pointeur vers l'interface IVsWindowFrame.
Retours
Si la méthode réussit, retourne S_OK. En cas d'échec, retourne un code d'erreur.
Implémente
Remarques
Signature COM
À partir de vsshell. idl :
HRESULT IVsProject2::OpenItem(
[in] VSITEMID itemid,
[in] REFGUID rguidLogicalView,
[in] IUnknown *punkDocDataExisting,
[out] IVsWindowFrame **ppWindowFrame
);
En implémentant IVsProjectSpecificEditorMap2 l’interface sur votre objet de projet, vous pouvez effectuer une gestion de fichiers spécifique au projet. Autrement dit, vous pouvez soit ouvrir le fichier dans un éditeur spécifique au projet, soit autoriser l’éditeur global à ouvrir l’élément. L’ouverture d’un élément nécessite le lancement d’un éditeur à l’aide de OpenStandardEditor ou OpenSpecificEditor , selon la gestion que vous souhaitez implémenter. Pour plus d’informations, consultez GetSpecificEditorProperty.
Notes
Dans votre implémentation de OpenItem , n’appelez pas Show sur le frame de fenêtre que vous retournez dans ppWindowFrame .
Comparer à la ReopenItem méthode.