Aracılığıyla paylaş


CodeClass2.IsDerivedFrom Özellik

Kod sınıfı başka bir kod sınıf bunun temel olarak sahip olup olmadığını gösteren değeri alır.

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

Sözdizimi

'Bildirim
ReadOnly Property IsDerivedFrom ( _
    FullName As String _
) As Boolean
bool this[
    string FullName
] { get; }
property bool IsDerivedFrom[String^ FullName] {
    bool get (String^ FullName);
}
abstract IsDerivedFrom : 
        FullName:string -> bool with get
JScript dizini oluşturulan özellikleri desteklemez.

Parametreler

  • FullName
    Tür: String

    Gerekli.Bu tür bir bürokrasi içinde aramak için yazın.

Özellik Değeri

Tür: Boolean
Bir boolean değeri true ; bunun temel olarak başka bir kod sınıf kodu sınıfı varsa false , aksi durumda.

Notlar

[!NOT]

Kod modeli öğe sınıfları, yapılar, İşlevler, öznitelikleri, temsilciler ve diğerleri gibi düzenlemeler 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).

Örnekler

[Visual Basic]

Sub IsDerivedFromExample(ByVal dte As DTE2)
    ' Before running this example, open a code document from a project.
    Try
        Dim projItem As ProjectItem = dte.ActiveDocument.ProjectItem
        Dim cm As CodeModel = projItem.ContainingProject.CodeModel

        ' Create a new class.
        Dim cls1 As CodeClass = cm.AddClass("BaseClass", projItem.Name)

        ' Derive a class from the newly created class.
        Dim bases() As Object = {cls1.FullName}
        Dim cls2 As CodeClass = cm.AddClass("DerivedClass", _
            projItem.Name, -1, bases)

        Dim derived As String
        If cls1.IsDerivedFrom(cls2.FullName) Then
            derived &= cls1.Name & " is derived from " & _
                cls2.Name & vbCrLf
        Else
            derived &= cls1.Name & " is not derived from " & _
                cls2.Name & vbCrLf
        End If

        If cls2.IsDerivedFrom(cls1.FullName) Then
            derived &= cls2.Name & " is derived from " & _
                cls1.Name & vbCrLf
        Else
            derived &= cls2.Name & " is not derived from " & _
                cls1.Name & vbCrLf
        End If

        MsgBox(derived)
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
End Sub

[C#]

public void IsDerivedFromExample(DTE2 dte)
{
    // Before running this example, open a code document from 
    // a project.
    try
    {
        ProjectItem projItem = dte.ActiveDocument.ProjectItem;
        CodeModel cm = projItem.ContainingProject.CodeModel;

        // Create a new class.
        CodeClass cls1 = cm.AddClass("BaseClass", projItem.Name, -1, 
            null, null, vsCMAccess.vsCMAccessPublic);

        // Derive a class from the newly created class.
        object[] bases = {cls1.FullName};
        CodeClass cls2 = cm.AddClass("DerivedClass", projItem.Name, -1, 
            bases, null, vsCMAccess.vsCMAccessPublic);
        string derived = "";

        if (cls1.get_IsDerivedFrom(cls2.FullName))
            derived += cls1.Name + " is derived from " + 
                cls2.Name + "\n";
        else
            derived += cls1.Name + " is not derived from " + 
                cls2.Name + "\n";

        if (cls2.get_IsDerivedFrom(cls1.FullName))
            derived += cls2.Name + " is derived from " + 
                cls1.Name + "\n";
        else
            derived += cls2.Name + " is not derived from " + 
                cls1.Name + "\n";

        MessageBox.Show(derived);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

CodeClass2 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#)