Export (0) Print
Expand All

Type.IsSubclassOf Method

Determines whether the class represented by the current Type derives from the class represented by the specified Type.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

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

Parameters

c
Type: System.Type
The Type to compare with the current Type.

Return Value

Type: System.Boolean
true if the Type represented by the c parameter and the current Type represent classes, and the class represented by the current Type derives from the class represented by c; otherwise, false. This method also returns false if c and the current Type represent the same class.

ExceptionCondition
ArgumentNullException

The c parameter is null.

The IsSubclassOf method cannot be used to determine whether an interface derives from another interface, or whether a class implements an interface. Use the GetInterface method for that purpose. Note that if a type is dervived from an interface, this method returns true for that type being a subclass of Object.

If the current Type represents a type parameter in the definition of a generic type or generic method, it derives from its class constraint or from System.Object if it has no class constraint.

NoteNote:

If the IsSubclassOf is the converse of IsAssignableFrom. That is, if t1.IsSubclassOf(t2) is true, then t2.IsAssignableFrom(t1) is also true.

This method can be overridden by a derived class.

The following example demonstrates the use of the IsSubclassOf method by creating an instance of a class and an instance of its derived class.


using System;

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

class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      Class1 myClass = new Class1();
      DerivedC1 myDClass = new DerivedC1();
      Type myClassType = myClass.GetType();
      Type myDClassType = myDClass.GetType();

      // Returns true:
      outputBlock.Text += String.Format("myDClass subclass of myClass: {0}", myDClassType.IsSubclassOf(myClassType)) + "\n";
   }
}


Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

ADD
Show:
© 2014 Microsoft