RunningDocumentTable Classe
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.
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. |