This documentation is archived and is not being maintained.

TypeExtension Class

Implements a markup extension that returns a Type based on a string input.

Namespace:  System.Windows.Markup
Assembly:  System.Xaml (in System.Xaml.dll)
XMLNS for XAML: Not mapped to an xmlns.

<MarkupExtensionReturnTypeAttribute(GetType(Type))> _
Public Class TypeExtension _
	Inherits MarkupExtension

The TypeExtension type exposes the following members.

Public methodTypeExtensionInitializes a new instance of the TypeExtension class.
Public methodTypeExtension(String)Initializes a new instance of the TypeExtension class, initializing the TypeName value based on the provided typeName string.
Public methodTypeExtension(Type)Initializes a new instance of the TypeExtension class, declaring the type directly.

Public propertyTypeGets or sets the type information for this extension.
Public propertyTypeNameGets or sets the type name represented by this markup extension.

Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodProvideValueReturns an object that should be set on the property where this extension is applied. For TypeExtension , this is the Type value as evaluated for the requested type name. (Overrides MarkupExtension.ProvideValue(IServiceProvider).)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

For XAML usage information, see x:Type Markup Extension.


The {x:Type} functionality is generally for user code invocation from markup. For code that is implementing XAML support, type resolution services come from IXamlTypeResolver and are related to the implementation of the acting XAML schema context. Do not attempt to reference ProvideValue as a substitute for a IXamlTypeResolver service provider; the context you pass in might not be valid for a type resolution, and attempts to call without valid services will fail.

WPF Usage Notes

Type references are commonly used for style, template, and databinding feature areas in WPF, when these features are referenced by XAML.

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.