Defines a reusable context for interpreting or mapping XAML types, and the types in the assemblies that underlie them.
Assembly: System.Xaml (in System.Xaml.dll)
Initializes a new instance of theclass.
Initializes a new instance of theclass, based on a set of reference assemblies.
Initializes a new instance of theclass, based on a set of reference assemblies and a settings object.
Initializes a new instance of theclass, based on a settings object.
Gets a value that specifies whether a XAML schema and its context use fully qualified assembly names in the values that are returned by the lookup API.
Gets an enumerable set of reference assemblies for the XAML schema context.
Gets a value that specifies whether a XAML schema and its context support markup extensions that have two constructors with the same arity (number of input parameters).
Determines whether the specified object is equal to the current object.(Inherited from Object.)
Provides a nonstandard Finalize implementation that does not invoke Dispose.(Overrides Object.Finalize().)
Searches the assemblies that are held by thisand returns a set of namespaces.
Searches the assemblies that are held by thisand returns a set of types from the specified XAML namespace.
Serves as the default hash function. (Inherited from Object.)
Gets a string that is reported as the preferred prefix for consumers to use when they map the specified XAML namespace.
Returns a value converter that can convert to the requested targetType.
Returns a XamlDirective value that represents a directive, either for the XAML language or for a particular implementation.
|GetXamlType(String, String, XamlType)|
Returns a XamlType that is based on a XAML namespace and a string for the type name. This signature can specify the type arguments for cases where the desired type is a generic type.
Returns a XamlType that is based on a CLR type identifier.
Returns a XamlType that is based on a XAML system type name.
Called when operations use this schema context to resolve an assembly that is required in order to resolve the XAML namespaces that it contains.
Returns a string that represents the current object.(Inherited from Object.)
Returns the success or failure of a request for a compatible XAML namespace. A successful request reports that XAML namespace as an out parameter.
A XAML schema context provides a layer of abstraction between a schema or vocabulary for XAML, and a specific parser implementation. By inserting the concept of a schema context, the schema can be used with different XAML parsers, and the schema context fills in the details that are needed to interact with a specific XAML parser. For example, the XAML schema context provides query APIs that relate to XAML concepts or to the CLR binding to the XAML type system. The XAML schema context is also responsible for maintaining the assembly list of loaded assemblies, which defines where a XAML parser looks for backing types.
Notes to Implementers:
In an AppDomain, a can be shared between multiple callers, which include both full and partial trust callers. This situation exists in frameworks such as WPF, which provide partial-trust access to XAML loading for portions of the WPF application model. The default implementation provides safeguards in this scenario by keeping all its properties and settings immutable. Derived implementations should also consider following this model of immutability for properties and settings of a XAML schema context.
The XamlType or XamlMember, also produce no side effects from lookups. All data that is needed to make a schema determination should be available from the construction and settings of the AppDomain. Notice that no lookup APIs rely on explicitly passed-in services; their input relies on string input only.base class is designed so that lookups have no externally observable side effects. The types that are referenced by APIs in the base class, such as
The XamlType and XamlMember are all thread safe in their base implementations. If you derive from or derive XAML type system classes such as XamlType and XamlMember , you can choose whether your classes will behave as thread safe.base class, and
Available since 4.0
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.