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 Ş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>) |