Exporter (0) Imprimer
Développer tout
Développer Réduire
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Type.IsSubclassOf, méthode

Détermine si la classe représentée par le Type en cours dérive de la classe représentée par le Type spécifié.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)

[ComVisibleAttribute(true)]
public virtual bool IsSubclassOf(
	Type c
)

Paramètres

c
Type : System.Type
Type à comparer avec le type actuel.

Valeur de retour

Type : System.Boolean
true si le Type représenté par le paramètre c et le Type actuel représentent des classes et si la classe représentée par le Type en cours dérive de la classe représentée par c ; sinon, false. Cette méthode retourne également false si c et le Type actuel représentent la même classe.

Implémentations

_Type.IsSubclassOf(Type)

ExceptionCondition
ArgumentNullException

Le paramètre c est null.

La méthode IsSubclassOf ne peut pas être utilisée pour déterminer si une interface dérive d'une autre interface ou si une classe implémente une interface. Utilisez la méthode GetInterface pour cela. Notez que si un type est dérivé d'une interface, cette méthode retourne true pour ce type qui est une sous-classe de Object.

Si le Type actuel représente un paramètre de type d'une définition de type ou de méthode générique, il dérive de sa contrainte de classe ou de System.Object s'il ne possède aucune contrainte de classe.

RemarqueRemarque

Si le IsSubclassOf est l'inverse de IsAssignableFrom. Ainsi, si t1.IsSubclassOf(t2) a la valeur true, t2.IsAssignableFrom(t1) a également la valeur true.

Cette méthode peut être substituée par une classe dérivée.

L'exemple suivant illustre l'utilisation de la méthode IsSubclassOf en créant une instance d'une classe et une instance de sa classe dérivée.


using System;

public class Class1 { }
public class DerivedC1 : Class1 { }

class IsSubclassTest
{
    public static void Main()
    {
        Class1 myClass = new Class1();
        DerivedC1 myDClass = new DerivedC1();
        Type myClassType = myClass.GetType();
        Type myDClassType = myDClass.GetType();

        // Returns true:
        Console.WriteLine("myDClass subclass of myClass: {0}", myDClassType.IsSubclassOf(myClassType));
        Console.ReadLine();
    }
}


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft