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: StringGerekli.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
- Anında arayanlar için tam güven. Bu üye kısmen güvenilen kodla kullanılamaz. Daha fazla bilgi için bkz. Kısmen Güvenilen Koddan Kitaplıkları Kullanma.
Ayrıca bkz.
Başvuru
Diğer Kaynaklar
Nasıl yapılır: Otomasyon Nesne Modeli Kod Örnekleri Derleme ve Çalıştırma