Aracılığıyla paylaş


RunningDocumentTable Sınıf

Tanım

Visual Studio'da açık durumdaki 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 örnekte, düzenleyicide açık olan bir dosyanın sahip olan projesini almak için dil hizmetinden bu sınıfın nasıl kullanılacağı gösterilmektedir.

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, o anda Visual Studio'da açılan tüm belgeleri görünür olup olmadıklarını izlemek için kullanılır. VSPackage (bkz. VSPackage'lar), hizmetin hizmet kimliğine SVsRunningDocumentTable ve arabirimin IServiceProvider.QueryService GUID'sine sahip bir hizmet sağlayıcısında yöntemini çağırarak RDT'ye IVsRunningDocumentTable erişebilir.

Bu sınıf, kullanışlı yöntemler koleksiyonunun arkasında arabirimin IVsRunningDocumentTable ayrıntılarını gizleyerek VSPackage'lar için RDT'ye erişimi basitleştirir. sınıfının yalnızca belge bilgilerine <xref:Microsoft.VisualStudio.Package.RunningDocumentTable> erişmek için kullanıldığını unutmayın. RDT olaylarını izlemek istiyorsanız arabirimi kendiniz edinmeniz IVsRunningDocumentTable (bir hizmet sağlayıcısındaki IServiceProvider.QueryService yöntemi aracılığıyla) ve kendi arabirimini (veya türevlerini) uygulamanızla IVsRunningDocTableEvents yöntemini çağırmanız AdviseRunningDocTableEvents gerekir.

sınıfı, Source görev pencereleri için hata görev öğeleri listesini oluştururken belgenin sahip olan projesini 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 açın. Sonuçta elde edilen nesne genellikle performansı artırmak için önbelleğe alınır. Bu sınıfın RDT'ye tam erişim sağlamadığı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.

RunningDocumentTable(IVsRunningDocumentTable)

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

Yöntemler

Advise(IVsRunningDocTableEvents)

İstemcinin Çalışan Belge Tablosu'na (RDT) yapılan değişikliklerle ilgili olayları almasını 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 Tablosu'ndan (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 Tablosu'ndan (RDT) nesne, tanımlama bilgisi ve sahip olan proje türünü alır.

FindDocument(String, UInt32)

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

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

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

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

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

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

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

GetDocumentInfo(String)

Belgenin tanımlayıcısı göz önünde bulundurularak, Çalışan Belge Tablosu'na kaydedilmiş bir belge hakkında bilgi alır.

GetDocumentInfo(UInt32)

Belgenin tanımlayıcısı göz önünde bulundurularak, Çalışan Belge Tablosu'na kaydedilmiş bir belge hakkında bilgi alır.

GetDocumentInfoAsync(String, CancellationToken)

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

GetDocumentInfoAsync(UInt32, CancellationToken)

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

GetEnumerator()

Çalışan Belge Tablosundaki belgelerin bir numaralandırıcısını alır.

GetHierarchyItem(String)

Belirtilen belgenin sahibi olan projeyi alır.

GetRelatedSaveTreeItems(UInt32, UInt32)

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

GetRunningDocumentContents(String)

Belgenin yolu verilen belgenin içeriğini almak için Çalışan Belge Tablosu'nu (RDT) kullanır.

GetRunningDocumentContents(UInt32)

Belgenin yolu verilen belgenin içeriğini almak için Çalışan Belge Tablosu'nu (RDT) kullanır.

LockDocument(_VSRDTFLAGS, UInt32)

Belirtilen belgede 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 girdi 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 kaydetmeden bu yana değişmişse belirtilen dosyayı kaydeder.

Unadvise(UInt32)

İstemcinin artık Çalışan Belge Tablosu (RDT) olaylarını almakla ilgilenmediğini gösterir.

UnlockDocument(_VSRDTFLAGS, UInt32)

Açık belgedeki okuma veya düzenleme kilidini serbest bırakır.

Belirtik Arabirim Kullanımları

IEnumerable.GetEnumerator()

Çalışan Belge Tablosundaki belgeleri numaralandırır.

Uzantı Metotları

EmptyIfNull<T>(IEnumerable<T>)

Null olmaması durumunda bu numaralandırmayı döndür. Null olması durumunda boş dönüş sabit listesi.

Şunlara uygulanır