Freigeben über


RunningDocumentTable Klasse

Definition

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

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)
Vererbung
RunningDocumentTable
Implementiert

Beispiele

In diesem Beispiel wird gezeigt, wie Sie diese Klasse aus einem Sprachdienst verwenden, um das besitzende Projekt einer Datei abzurufen, die derzeit im Editor geöffnet ist.

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);  
        }  
    }  
}  

Hinweise

Die ausgeführte Dokumenttabelle wird verwendet, um alle Dokumente nachzuverfolgen, die derzeit in Visual Studio geöffnet sind, unabhängig davon, ob sie sichtbar sind oder nicht. Ein VSPackage (siehe VSPackages) kann auf das RDT zugreifen, indem die IServiceProvider.QueryService -Methode für einen Dienstanbieter mit der Dienst-ID des SVsRunningDocumentTable Diensts und der GUID der IVsRunningDocumentTable Schnittstelle aufgerufen wird.

Diese Klasse vereinfacht den Zugriff auf das RDT für VSPackages, indem die Details der IVsRunningDocumentTable Schnittstelle hinter einer Sammlung nützlicher Methoden ausgeblendet werden. Beachten Sie, dass die <xref:Microsoft.VisualStudio.Package.RunningDocumentTable> -Klasse nur für den Zugriff auf Dokumentinformationen verwendet wird. Wenn Sie RDT-Ereignisse nachverfolgen möchten, müssen Sie die IVsRunningDocumentTable Schnittstelle selbst abrufen (über die IServiceProvider.QueryService -Methode eines Dienstanbieters) und die AdviseRunningDocTableEvents -Methode mit Ihrer eigenen Implementierung der IVsRunningDocTableEvents Schnittstelle (oder deren Ableitungen) aufrufen.

Die Source -Klasse verwendet diese Klasse, um das besitzende Projekt eines Dokuments abzurufen, wenn die Liste der Fehleraufgabenelemente für die Aufgabenfenster erstellt wird.

Hinweise für Aufrufer

Instanziieren Sie diese Klasse, um Informationen zu einem geöffneten Dokument abzurufen. Das resultierende Objekt wird in der Regel zwischengespeichert, um die Leistung zu verbessern. Beachten Sie, dass diese Klasse keinen vollständigen Zugriff auf das RDT bietet.

Konstruktoren

RunningDocumentTable()

Instanziiert eine neue instance der RunningDocumentTable.

RunningDocumentTable(IServiceProvider)

Initialisiert eine neue Instanz der Microsoft.VisualStudio.Package.RunningDocumentTable-Klasse.

RunningDocumentTable(IVsRunningDocumentTable)

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

Methoden

Advise(IVsRunningDocTableEvents)

Ermöglicht dem Client, Ereignisse zu Änderungen an der aktiven Dokumenttabelle (RDT) zu empfangen.

CloseDocument(__FRAMECLOSE, UInt32)

Schließt das Dokument.

CloseHierarchy(__FRAMECLOSE, IVsHierarchy)

Schließt die Projekthierarchie.

CloseSolution(__FRAMECLOSE)

Schließt die Lösung.

FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32)

Sucht und sperrt das Dokument.

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

Sucht und sperrt das Dokument.

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

Sucht und sperrt das Dokument.

FindDocument(String)

Ruft ein Objekt von der aktiven Dokumenttabelle (RDT) ab, das das durch den angegebenen Pfad definierte Dokument darstellt.

FindDocument(String, IVsHierarchy, UInt32, UInt32)

Ruft ein Objekt, ein Cookie und einen dazugehörigen Projekttyp aus der aktiven Dokumenttabelle (RDT) für das Dokument ab, das durch den angegebenen Pfad angegeben wird.

FindDocument(String, UInt32)

Ruft ein Cookie von der aktiven Dokumenttabelle (RDT) ab, das das durch den angegebenen Pfad definierte Dokument darstellt.

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

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

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

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

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

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

GetDocumentInfo(String)

Ruft unter Angabe der Dokument-ID Informationen zu einem in der aktiven Dokumenttabelle registrierten Dokument ab.

GetDocumentInfo(UInt32)

Ruft unter Angabe der Dokument-ID Informationen zu einem in der aktiven Dokumenttabelle registrierten Dokument ab.

GetDocumentInfoAsync(String, CancellationToken)

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

GetDocumentInfoAsync(UInt32, CancellationToken)

Bietet Zugriff auf die ausgeführte Dokumenttabelle (Running Document Table, RDT), die alle derzeit geöffneten Dokumente in Visual Studio nachverfolgt.

GetEnumerator()

Ruft einen Enumerator der Dokumente in der ausgeführten Dokumenttabelle ab.

GetHierarchyItem(String)

Ruft das Projekt ab, das Besitzer des angegebenen Dokuments ist.

GetRelatedSaveTreeItems(UInt32, UInt32)

Ruft ein Array von Speichern von Strukturelementen ab.

GetRunningDocumentContents(String)

Verwendet die aktive Dokumenttabelle, um den Inhalt eines Dokuments abzurufen, wenn der Pfad zum Dokument angegeben wird.

GetRunningDocumentContents(UInt32)

Verwendet die aktive Dokumenttabelle, um den Inhalt eines Dokuments abzurufen, wenn der Pfad zum Dokument angegeben wird.

LockDocument(_VSRDTFLAGS, UInt32)

Ruft einen auf dem angegebenen Dokument vorhandene Lese- oder eine Bearbeitungssperre ab.

QueryCloseRunningDocument(String)

Bestimmt, ob das Dokument geschlossen werden kann.

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

Erstellt einen Eintrag in der ausgeführten Dokumententabelle, wenn ein Dokument erstellt oder geöffnet wird.

RenameDocument(String, String, IVsHierarchy, UInt32)

Benennt ein Dokument um und übergibt optional den Besitz des Dokuments an das angegebenen Projekt.

SaveFileIfDirty(String)

Speichert die angegebene Datei, wenn sie sich seit der letzten Speicherung geändert hat.

Unadvise(UInt32)

Gibt den Client an, der nicht mehr am Empfang von aktiven Dokumenttabellen (RDT)-Ereignissen interessiert ist.

UnlockDocument(_VSRDTFLAGS, UInt32)

Gibt eine Lese- oder eine Bearbeitungssperre im geöffneten Dokument frei.

Explizite Schnittstellenimplementierungen

IEnumerable.GetEnumerator()

Listet die Dokumente in der aktiven Dokumenttabelle auf.

Erweiterungsmethoden

EmptyIfNull<T>(IEnumerable<T>)

Gibt diese Enumeration zurück, falls sie nicht NULL ist. Wenn es NULL ist, geben Sie eine leere Enumeration zurück.

Gilt für: