RunningDocumentTable Sınıf

Tanım

Visual Studio 'da Şu anda açık olan tüm belgeleri izleyen çalışan belge tablosuna (RDT) erişim sağlar.

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)
Devralma
RunningDocumentTable
Uygulamalar

Örnekler

Bu örnek, düzenleyicide açık olan bir dosyanın sahip olduğu projeyi almak için bir dil hizmetinden bu sınıfın nasıl kullanılacağını gösterir.

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

Açıklamalar

Çalışan belge tablosu, üzerinde açık olan ve görünmeyen tüm belgeleri izlemek için kullanılır Visual Studio . VSPackage (bkz. VSPackages), HIZMETINI hizmet IServiceProvider.QueryService kimliği SVsRunningDocumentTable ve arabirimin GUID 'si ile bir hizmet sağlayıcısına çağırarak RDT 'e erişebilir IVsRunningDocumentTable .

Bu sınıf, IVsRunningDocumentTable bir dizi kullanışlı yöntemin arkasındaki arabirimin ayrıntılarını gizleyerek VSPackages için RDT 'e erişimi basitleştirir. <xref:Microsoft.VisualStudio.Package.RunningDocumentTable>Sınıfının yalnızca belge bilgilerine erişmek için kullanıldığını unutmayın. RDT olaylarını izlemek isterseniz, IVsRunningDocumentTable arabirimi kendiniz edinmeniz gerekir ( IServiceProvider.QueryService bir hizmet sağlayıcısı üzerindeki yöntemi aracılığıyla) ve AdviseRunningDocTableEvents yöntemi kendi uygulamanızın IVsRunningDocTableEvents (veya türetmeleri) uygulamanız ile çağırabilirsiniz.

SourceSınıfı, görev pencereleri için hata görev öğelerinin listesini oluştururken belgenin sahip olduğu projeyi almak için bu sınıfı kullanır.

Arayanlara Notlar

Açık bir belge hakkında bilgi edinmek için bu sınıfın örneğini oluşturun. Elde edilen nesne genellikle performansı artırmak için önbelleğe alınır. Bu sınıfın RDT 'e tamamen erişim sağlamayacağını unutmayın.

Oluşturucular

RunningDocumentTable()

RunningDocumentTable 'ın yeni bir örneğini başlatır.

RunningDocumentTable(IServiceProvider)

Microsoft.VisualStudio.Package.RunningDocumentTable sınıfının yeni bir örneğini başlatır.

Yöntemler

Advise(IVsRunningDocTableEvents)

İstemcinin çalışan belge tablosu 'nda (RDT) yapılan değişikliklerle ilgili olayları almasına olanak sağlar.

CloseDocument(__FRAMECLOSE, UInt32)

Belgeyi kapatır.

CloseHierarchy(__FRAMECLOSE, IVsHierarchy)

Proje hiyerarşisini kapatır.

CloseSolution(__FRAMECLOSE)

Çözümü kapatır.

FindAndLockDocumentEx(_VSRDTFLAGS, String, IVsHierarchy, UInt32)

Belgeyi bulur ve kilitler.

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

Belgeyi bulur ve kilitler.

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

Belgeyi bulur ve kilitler.

FindDocument(String)

Çalışan Belge tablosundan (RDT) verilen yol tarafından belirtilen belgeyi temsil eden bir nesne alır.

FindDocument(String, IVsHierarchy, UInt32, UInt32)

Verilen yol tarafından belirtilen belge için çalışan Belge tablosundan (RDT) bir nesne, tanımlama bilgisi ve sahip proje türünü alır.

FindDocument(String, UInt32)

Çalışan Belge tablosundan (RDT) verilen yol tarafından belirtilen belgeyi temsil eden bir tanımlama bilgisi alır.

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

Çalışma belge tablosunda kayıtlı bir belge hakkında, belgenin tanımlayıcısı verildiğinde bilgileri alır.

GetDocumentInfo(UInt32)

Çalışma belge tablosunda kayıtlı bir belge hakkında, belgenin tanımlayıcısı verildiğinde bilgileri alır.

GetEnumerator()

Çalışan belge tablosundaki belgelerin bir Numaralandırıcı alır.

GetHierarchyItem(String)

Belirtilen belgenin sahibi olan projeyi alır.

GetRelatedSaveTreeItems(UInt32, UInt32)

Ağaç öğelerini kaydet dizisini alır.

GetRunningDocumentContents(String)

, Belgenin yolu verilen bir belgenin içeriğini almak için çalışan belge tablosunu (RDT) kullanır.

GetRunningDocumentContents(UInt32)

, Belgenin yolu verilen bir belgenin içeriğini almak için çalışan belge tablosunu (RDT) kullanır.

LockDocument(_VSRDTFLAGS, UInt32)

Belirtilen belge üzerinde bir okuma veya düzenleme kilidi alır.

QueryCloseRunningDocument(String)

Belgenin kapatılıp kapatılamayacağını belirler.

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

Bir belge oluşturulduğunda veya açıldığında, çalışan belge tablosunda bir giriş oluşturur.

RenameDocument(String, String, IVsHierarchy, UInt32)

Belgeyi yeniden adlandırır ve isteğe bağlı olarak belgenin sahipliğini belirtilen projeye verir.

SaveFileIfDirty(String)

Son kaydetme işleminden sonra değiştirildiyse, belirtilen dosyayı kaydeder.

Unadvise(UInt32)

İstemcinin, çalışan belge tablosu (RDT) olaylarını almak için artık ilgilenmediğini belirtir.

UnlockDocument(_VSRDTFLAGS, UInt32)

Açık belge üzerinde bir okuma veya düzenleme kilidi yayınlar.

Belirtik Arabirim Kullanımları

IEnumerable.GetEnumerator()

Çalışan belge tablosundaki belgeleri numaralandırır.

Uzantı Metotları

EmptyIfNull<T>(IEnumerable<T>)

Şunlara uygulanır