Aracılığıyla paylaş


CodeElement2.ElementID Özellik

Öğeyi benzersiz olarak tanımlayan bir değer alır.Visual C# [NULL]'ta uygulanmadı.

Ad alanı:  EnvDTE80
Derleme:  EnvDTE80 (EnvDTE80.dll içinde)

Sözdizimi

'Bildirim
ReadOnly Property ElementID As String
string ElementID { get; }
property String^ ElementID {
    String^ get ();
}
abstract ElementID : string with get
function get ElementID () : String

Özellik Değeri

Tür: String
Öğe için benzersiz değeri temsil eden bir dize.

Notlar

ElementID Özellik öğe adını ve öğeyi benzersiz olarak tanıtan diğer bilgileri temel alarak hesaplanan bir değerdir.Kimliği'nin tam hesaplama diller arasında değişir.

Bu kimlik öğelerinin başvurularını korumadan izlemek için kod modeli istemciler tarafından kullanılır.İstemci kodu değiştiriyor öğenin bildirmek için kod modeli olayları dahil.Oluşturuldukları sırada, yeni kimlikler sağlanır.

Değeri ElementID özelliği yok sayılacağı kalıcı.Kod modeli için bir Proje oluşturulur ve geçerli oturumda da değişebilir her zaman değiştirmek olasıdır.Bir ElementChanged olayı oluşur her zaman ElementID değişiklikler.

[!NOT]

Çağıramazsınız RenameSymbol veya ElementID bağlanan. (Örneğin, DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElements.Item("Class1").RenameSymbol("Class2").) Nesneye açıkça dönüştürmelisiniz CodeElement2 arabirim çağrısı yapmadan önce.

Kod içindeki öğelerin EnvDTE80 (Bundan sonra kodu denilen * 2 nesne) değerlerden türetilen EnvDTE. (Örneğin, CodeClass2 türetilen CodeClass, ve CodeElement2 türetilen CodeElement.) Dahili olarak Visual Studio, tüm kod öğeleri (her iki derlemeler) sırayla artığını CodeElement2.Böylece, mantıksal olarak, olduğu gibi CodeClass2, örneğin, sonuçta türetilen CodeElement2.

İki öğe iki ayrı miras hiyerarşileri gerçekte olduğundan, yine de latebinder aramak yapamazsınız CodeElement2 yöntemlerde kod * 2 nesne.EnvDTEworks temelde aynı şekilde, ancak ön işlemci makro kullanımını sağlayacak şekilde yöntemleri miras tanımlanması arabirimler sağlar tüm dönüştürmeleri için mevcut ilgili arabirimlerini açıkça tanımlanır.EnvDTE80arabirimler, yalnızca ön işlemci ifadeleri kullanmanıza gerek kalmadan benzer bir devralma düzeni kullanılarak tanımlanır.Bu daha zarif gereksiz özellikleri ortadan kaldırır, ancak özellikleri bağlanan adlı sonucudur bu yana bir yöntemdir.Bu soruna geçici bir çözüm için açıkça nesne artığını CodeElement2 arabirim çağrısı yapmadan önce.

Ayrıca, sınıflar, yapılar, İşlevler, öznitelikleri, temsilciler ve diğerleri gibi model öğeleri kodu değerleri düzenlemeleri değerlerine bağlı her zaman aynı kalmasına dayanıyordu olamaz, başka bir deyişle, belirli türdeki yaptıktan sonra kararlı olmayan olabilir.Daha fazla bilgi için kod modeli öğesi değerleri değiştirebilir bölümüne bakın Kod Modeli Kullanarak Kodu Keşfetme (Visual Basic).

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

CodeElement2 Arabirim

EnvDTE80 Ad Alanı

Diğer Kaynaklar

Nasıl yapılır: Otomasyon Nesne Modeli Kod Örnekleri Derleme ve Çalıştırma

Kod Modeli Kullanarak Kodu Keşfetme (Visual Basic)

Kod Modeli Kullanarak Kodu Keşfetme (Visual C#)