Partager via


RunningDocumentTable Classe

Définition

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

public ref class RunningDocumentTable : System::Collections::Generic::IEnumerable<Microsoft::VisualStudio::Shell::RunningDocumentInfo>
public class RunningDocumentTable : System.Collections.Generic.IEnumerable<Microsoft.VisualStudio.Shell.RunningDocumentInfo>
type RunningDocumentTable = class
    interface seq<RunningDocumentInfo>
    interface IEnumerable
Public Class RunningDocumentTable
Implements IEnumerable(Of RunningDocumentInfo)
Héritage
RunningDocumentTable
Implémente

Exemples

Cet exemple montre comment utiliser cette classe à partir d’un service de langage pour obtenir le projet propriétaire d’un fichier actuellement ouvert dans l’éditeur.

using Microsoft.VisualStudio.Package;  

namespace MyLanguagePackage  
{  
    public class MyLanguageService : LanguageService  
    {  
        IServiceProvider serviceProvider;  

        public IVsHierarchy GetOwningProject(Source src)  
        {  
            RunningDocumentTable rdt = new RunningDocumentTable(this.serviceProvider);  
            string filename = src.GetFilePath();  
            return rdt.GetHierarchyItem(filename);  
        }  
    }  
}  

Remarques

La table de documents en cours d’exécution permet de suivre tous les documents actuellement ouverts dans Visual Studio, qu’ils soient visibles ou non. Un VSPackage (voir VSPackages) peut accéder au RDT en appelant la IServiceProvider.QueryService méthode sur un fournisseur de services avec l’ID de service du SVsRunningDocumentTable service et le GUID de l’interface IVsRunningDocumentTable .

Cette classe simplifie l’accès au RDT pour VSPackages en masquant les détails de l’interface IVsRunningDocumentTable derrière une collection de méthodes utiles. Notez que la <xref:Microsoft.VisualStudio.Package.RunningDocumentTable> classe est utilisée uniquement pour accéder aux informations de document. Si vous souhaitez suivre les événements RDT, vous devez obtenir l’interface IVsRunningDocumentTable vous-même (via la IServiceProvider.QueryService méthode sur un fournisseur de services) et appeler la AdviseRunningDocTableEvents méthode avec votre propre implémentation de l’interface IVsRunningDocTableEvents (ou de ses dérivés).

La Source classe utilise cette classe pour obtenir le projet propriétaire d’un document lors de la création de la liste des éléments de tâche d’erreur pour les fenêtres de tâches.

Notes pour les appelants

Instanciez cette classe pour obtenir des informations sur un document ouvert. L’objet résultant est généralement mis en cache pour améliorer les performances. Notez que cette classe ne fournit pas un accès complet au RDT.

Constructeurs

RunningDocumentTable()

Instancie une nouvelle instance de RunningDocumentTable.

RunningDocumentTable(IServiceProvider)

Initialise une nouvelle instance de la classe Microsoft.VisualStudio.Package.RunningDocumentTable.

RunningDocumentTable(IVsRunningDocumentTable)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

Méthodes

Advise(IVsRunningDocTableEvents)

Permet au client de recevoir des événements sur les modifications apportées à la table de document en cours d'exécution.

CloseDocument(__FRAMECLOSE, UInt32)

Ferme le document.

CloseHierarchy(__FRAMECLOSE, IVsHierarchy)

Ferme la hiérarchie de projet.

CloseSolution(__FRAMECLOSE)

Ferme la solution.

FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32)

Recherche et verrouille le document.

FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32, IVsHierarchy, UInt32, UInt32)

Recherche et verrouille le document.

FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32, UInt32)

Recherche et verrouille le document.

FindDocument(String)

Obtient un objet de la Table de document en cours d'exécution (RDT) qui représente le document spécifié par le chemin d'accès donné.

FindDocument(String, IVsHierarchy, UInt32, UInt32)

Obtient un objet, un cookie, et un type de projet propriétaire de la Table de document en cours d'exécution (RDT) pour le document spécifié par le chemin d'accès donné.

FindDocument(String, UInt32)

Obtient un cookie de la Table de document en cours d'exécution (RDT) qui représente le document spécifié par le chemin d'accès donné.

FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object, IVsHierarchy, UInt32, UInt32)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object, UInt32)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

GetDocumentInfo(String)

Obtient des informations à propos d'un document inscrit dans la Table de document en cours d'exécution, selon l'identificateur du document.

GetDocumentInfo(UInt32)

Obtient des informations à propos d'un document inscrit dans la Table de document en cours d'exécution, selon l'identificateur du document.

GetDocumentInfoAsync(String, CancellationToken)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

GetDocumentInfoAsync(UInt32, CancellationToken)

Fournit l’accès à la table de documents en cours d’exécution (RDT) qui effectue le suivi de tous les documents actuellement ouverts dans Visual Studio.

GetEnumerator()

Obtient un énumérateur des documents dans la table de document en cours d'exécution.

GetHierarchyItem(String)

Obtient le projet qui possède le document spécifié.

GetRelatedSaveTreeItems(UInt32, UInt32)

Obtient un tableau d’éléments d’arborescence d’enregistrement.

GetRunningDocumentContents(String)

Utilise la table de document en cours d'exécution (RDT) pour obtenir le contenu d'un document à partir de son chemin d'accès.

GetRunningDocumentContents(UInt32)

Utilise la table de document en cours d'exécution (RDT) pour obtenir le contenu d'un document à partir de son chemin d'accès.

LockDocument(_VSRDTFLAGS, UInt32)

Obtient un verrou de lecture ou de modification dans le document spécifié.

QueryCloseRunningDocument(String)

Détermine si le document peut être fermé.

RegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, IntPtr)

Crée une entrée dans la table de documents en cours d'exécution lorsqu'un document est créé ou ouvert.

RenameDocument(String, String, IVsHierarchy, UInt32)

Renomme un document et attribue éventuellement la propriété du document au projet spécifié.

SaveFileIfDirty(String)

Enregistre le fichier spécifié s'il a été modifié depuis le dernier enregistrement.

Unadvise(UInt32)

Indique que le client n'est plus intéressé par la réception des événements de la table de documents en cours d'exécution (RDT).

UnlockDocument(_VSRDTFLAGS, UInt32)

Libère un verrou de lecture ou de modification dans le document ouvert.

Implémentations d’interfaces explicites

IEnumerable.GetEnumerator()

Énumère les documents dans la table de document en cours d'exécution.

Méthodes d’extension

EmptyIfNull<T>(IEnumerable<T>)

Retourne cette énumération au cas où elle n’est pas null. Dans le cas où il est null, retournez l’énumération vide.

S’applique à