RunningDocumentTable Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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. |