TypeHandle Property

Type.TypeHandle Property


Gets the handle for the current Type.

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

public virtual RuntimeTypeHandle TypeHandle { get; }

Property Value

Type: System.RuntimeTypeHandle

The handle for the current Type.

Exception Condition

The .NET Compact Framework does not currently support this property.

TypeHandle encapsulates a pointer to an internal data structure that represents the type. This handle is unique during the process lifetime. The handle is valid only in the application domain in which it was obtained.

The following example returns the handle of the corresponding type and passes the handle to a method that gets the type from the handle and displays it.

using System;
using System.Reflection;
class MyClass
    public int myField = 10;

class Type_TypeHandle
    public static void Main()
            MyClass myClass = new MyClass();

            // Get the type of MyClass.
            Type myClassType = myClass.GetType();

            // Get the runtime handle of MyClass.
            RuntimeTypeHandle myClassHandle = myClassType.TypeHandle;

        catch(Exception e)
            Console.WriteLine("Exception: {0}", e.Message );

    public static void DisplayTypeHandle(RuntimeTypeHandle myTypeHandle)
        // Get the type from the handle.
        Type myType = Type.GetTypeFromHandle(myTypeHandle);      
        // Display the type.
        Console.WriteLine("\nDisplaying the type from the handle:\n");
        Console.WriteLine("The type is {0}.", myType.ToString());

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
© 2015 Microsoft