RunningDocumentTable Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě 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)
- Dědičnost
-
RunningDocumentTable
- Implementuje
Příklady
Tento příklad ukazuje, jak použít tuto třídu z jazykové služby k získání vlastního projektu souboru aktuálně otevřeného v editoru.
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);
}
}
}
Poznámky
Spuštěná tabulka dokumentů se používá ke sledování všech dokumentů, které jsou aktuálně otevřeny v sadě Visual Studio, bez ohledu na to, jestli jsou viditelné nebo ne. Sada VSPackage (viz VSPackages) má přístup k RDT voláním IServiceProvider.QueryService metody u poskytovatele služby s ID SVsRunningDocumentTable služby a identifikátorem GUID IVsRunningDocumentTable rozhraní.
Tato třída zjednodušuje přístup k RDT pro VSPackages tím, že skrývá podrobnosti IVsRunningDocumentTable rozhraní za kolekci užitečných metod. Všimněte si <xref:Microsoft.VisualStudio.Package.RunningDocumentTable> , že třída se používá pouze pro přístup k informacím o dokumentu. Pokud chcete sledovat události RDT, musíte rozhraní získat IVsRunningDocumentTable sami (prostřednictvím IServiceProvider.QueryService metody u poskytovatele služeb) a volat metodu AdviseRunningDocTableEvents s vlastní implementací IVsRunningDocTableEvents rozhraní (nebo jeho derivátů).
Třída Source používá tuto třídu k získání vlastního projektu dokumentu při vytváření seznamu chybových položek úkolů pro okna úkolů.
Poznámky pro volající
Vytvořte instanci této třídy, abyste získali informace o otevřeném dokumentu. Výsledný objekt se obvykle ukládá do mezipaměti za účelem zvýšení výkonu. Všimněte si, že tato třída neposkytuje úplný přístup k RDT.
Konstruktory
RunningDocumentTable() |
Vytvoří instanci nové instance RunningDocumentTable. |
RunningDocumentTable(IServiceProvider) |
Inicializuje novou instanci Microsoft.VisualStudio.Package.RunningDocumentTable třídy. |
RunningDocumentTable(IVsRunningDocumentTable) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
Metody
Advise(IVsRunningDocTableEvents) |
Umožňuje klientovi přijímat události týkající se změn ve spuštěné tabulce dokumentů (RDT). |
CloseDocument(__FRAMECLOSE, UInt32) |
Zavře dokument. |
CloseHierarchy(__FRAMECLOSE, IVsHierarchy) |
Zavře hierarchii projektu. |
CloseSolution(__FRAMECLOSE) |
Zavře řešení. |
FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32) |
Vyhledá a uzamkne dokument. |
FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32, IVsHierarchy, UInt32, UInt32) |
Vyhledá a uzamkne dokument. |
FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32, UInt32) |
Vyhledá a uzamkne dokument. |
FindDocument(String) |
Získá objekt ze spuštěné tabulky dokumentů (RDT), který představuje dokument určený danou cestou. |
FindDocument(String, IVsHierarchy, UInt32, UInt32) |
Získá objekt, soubor cookie a vlastní typ projektu z tabulky spuštěného dokumentu (RDT) pro dokument určený danou cestou. |
FindDocument(String, UInt32) |
Získá soubor cookie z tabulky spuštěného dokumentu (RDT), který představuje dokument určený danou cestou. |
FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object, IVsHierarchy, UInt32, UInt32) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
FindOrRegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, Object, UInt32) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
GetDocumentInfo(String) |
Získá informace o dokumentu zaregistrovaném v tabulce spuštěného dokumentu vzhledem k identifikátoru dokumentu. |
GetDocumentInfo(UInt32) |
Získá informace o dokumentu zaregistrovaném v tabulce spuštěného dokumentu vzhledem k identifikátoru dokumentu. |
GetDocumentInfoAsync(String, CancellationToken) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
GetDocumentInfoAsync(UInt32, CancellationToken) |
Poskytuje přístup ke spuštěné tabulce dokumentů (RDT), která sleduje všechny aktuálně otevřené dokumenty v sadě Visual Studio. |
GetEnumerator() |
Získá enumerátor dokumentů v tabulce spuštěného dokumentu. |
GetHierarchyItem(String) |
Získá projekt, který vlastní zadaný dokument. |
GetRelatedSaveTreeItems(UInt32, UInt32) |
Získá pole položek stromu ukládání. |
GetRunningDocumentContents(String) |
Používá tabulku spuštěných dokumentů (RDT) k získání obsahu dokumentu zadaného cestou k dokumentu. |
GetRunningDocumentContents(UInt32) |
Používá tabulku spuštěných dokumentů (RDT) k získání obsahu dokumentu zadaného cestou k dokumentu. |
LockDocument(_VSRDTFLAGS, UInt32) |
Získá zámek pro čtení nebo úpravy v zadaném dokumentu. |
QueryCloseRunningDocument(String) |
Určuje, zda lze dokument zavřít. |
RegisterAndLockDocument(_VSRDTFLAGS, String, IVsHierarchy, UInt32, IntPtr) |
Vytvoří položku ve spuštěné tabulce dokumentů při vytvoření nebo otevření dokumentu. |
RenameDocument(String, String, IVsHierarchy, UInt32) |
Přejmenuje dokument a volitelně ho přejmenuje na zadaný projekt. |
SaveFileIfDirty(String) |
Uloží zadaný soubor, pokud se od posledního uložení změnil. |
Unadvise(UInt32) |
Označuje, že klient už nemá zájem o příjem událostí RDT (Running Document Table). |
UnlockDocument(_VSRDTFLAGS, UInt32) |
Uvolní zámek pro čtení nebo úpravy otevřeného dokumentu. |
Explicitní implementace rozhraní
IEnumerable.GetEnumerator() |
Vytvoří výčet dokumentů v tabulce spuštěného dokumentu. |
Metody rozšíření
EmptyIfNull<T>(IEnumerable<T>) |
Pokud nemá hodnotu null, vraťte tento výčet. V případě, že je hodnota null, vraťte prázdný výčet. |