Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

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.

ExceptionCondition
NotSupportedException

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 Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      try
      {
         MyClass myClass = new MyClass();

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

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

         DisplayTypeHandle(outputBlock, myClassHandle);
      }
      catch (Exception e)
      {
         outputBlock.Text += String.Format("Exception: {0}", e.Message) + "\n";
      }
   }

   public static void DisplayTypeHandle(System.Windows.Controls.TextBlock outputBlock, RuntimeTypeHandle myTypeHandle)
   {
      // Get the type from the handle.
      Type myType = Type.GetTypeFromHandle(myTypeHandle);
      // Display the type.
      outputBlock.Text += "\nDisplaying the type from the handle:\n" + "\n";
      outputBlock.Text += String.Format("The type is {0}.", myType.ToString()) + "\n";
   }
}


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2015 Microsoft