XamlSchemaContext Clase

Definición

Define un contexto reutilizable para interpretar o asignar tipos XAML y los tipos de los ensamblados subyacentes.

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
Herencia
XamlSchemaContext

Comentarios

Un contexto de esquema XAML proporciona una capa de abstracción entre un esquema o vocabulario para XAML y una implementación específica del analizador. Al insertar el concepto de un contexto de esquema, el esquema se puede usar con distintos analizadores XAML y el contexto de esquema rellena los detalles necesarios para interactuar con un analizador XAML específico. Por ejemplo, el contexto de esquema XAML proporciona API de consulta relacionadas con conceptos XAML o con el enlace CLR al sistema de tipos XAML. El contexto de esquema XAML también es responsable de mantener la lista de ensamblados cargados, que define dónde busca un analizador XAML para los tipos de respaldo.

Notas a los desarrolladores de herederos

En un AppDomain, se puede compartir entre XamlSchemaContext varios autores de llamadas, que incluyen autores de llamadas de confianza total y parcial. Esta situación existe en marcos como WPF, que proporcionan acceso de confianza parcial a la carga XAML para partes del modelo de aplicación de WPF. La implementación predeterminada XamlSchemaContext proporciona medidas de seguridad en este escenario manteniendo inmutables todas sus propiedades y configuraciones. Las implementaciones derivadas también deben considerar la posibilidad de seguir este modelo de inmutabilidad para las propiedades y la configuración de un contexto de esquema XAML.

La XamlSchemaContext clase base está diseñada para que las búsquedas no tengan efectos secundarios observables externamente. Los tipos a los que hacen referencia XamlSchemaContext las API de la clase base, como XamlType o XamlMember, tampoco producen efectos secundarios de búsquedas. Todos los datos necesarios para determinar un esquema deben estar disponibles en la construcción y configuración de .AppDomain Observe que ninguna API de búsqueda se basa en servicios pasados explícitamente; su entrada solo se basa en la entrada de cadena.

La XamlSchemaContext clase base y XamlType son XamlMember todas seguras para subprocesos en sus implementaciones base. Si derivas de clases del XamlSchemaContext sistema de tipos XAML como XamlType y XamlMember , puedes elegir si las clases se comportarán como seguras para subprocesos.

Constructores

Nombre Description
XamlSchemaContext()

Inicializa una nueva instancia de la clase XamlSchemaContext.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

Inicializa una nueva instancia de la XamlSchemaContext clase, basada en un conjunto de ensamblados de referencia y un objeto de configuración.

XamlSchemaContext(IEnumerable<Assembly>)

Inicializa una nueva instancia de la XamlSchemaContext clase, basada en un conjunto de ensamblados de referencia.

XamlSchemaContext(XamlSchemaContextSettings)

Inicializa una nueva instancia de la XamlSchemaContext clase, basada en un objeto de configuración.

Propiedades

Nombre Description
FullyQualifyAssemblyNamesInClrNamespaces

Obtiene un valor que especifica si un esquema XAML y su contexto usan nombres de ensamblado completos en los valores devueltos por la API de búsqueda.

ReferenceAssemblies

Obtiene un conjunto enumerable de ensamblados de referencia para el contexto de esquema XAML.

SupportMarkupExtensionsWithDuplicateArity

Obtiene un valor que especifica si un esquema XAML y su contexto admiten extensiones de marcado que tienen dos constructores con la misma aridad (número de parámetros de entrada).

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
Finalize()

Proporciona una implementación no estándar Finalize que no invoca Dispose.

GetAllXamlNamespaces()

Busca en los ensamblados que mantiene y XamlSchemaContext devuelve un conjunto de espacios de nombres.

GetAllXamlTypes(String)

Busca en los ensamblados mantenidos por este XamlSchemaContext objeto y devuelve un conjunto de tipos del espacio de nombres XAML especificado.

GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetPreferredPrefix(String)

Obtiene una cadena que se notifica como prefijo preferido para que los consumidores los usen cuando asignan el espacio de nombres XAML especificado.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetValueConverter<TConverterBase>(Type, XamlType)

Devuelve un convertidor de valores que puede convertir en el objeto solicitado targetType.

GetXamlDirective(String, String)

Devuelve un XamlDirective valor que representa una directiva, ya sea para el lenguaje XAML o para una implementación determinada.

GetXamlType(String, String, XamlType[])

Devuelve un XamlType que se basa en un espacio de nombres XAML y una cadena para el nombre de tipo. Esta firma puede especificar los argumentos de tipo para los casos en los que el tipo deseado es un tipo genérico.

GetXamlType(Type)

Devuelve un que XamlType se basa en un identificador de tipo CLR.

GetXamlType(XamlTypeName)

Devuelve un que XamlType se basa en un nombre de tipo de sistema XAML.

MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
OnAssemblyResolve(String)

Se llama cuando las operaciones usan este contexto de esquema para resolver un ensamblado necesario para resolver los espacios de nombres XAML que contiene.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TryGetCompatibleXamlNamespace(String, String)

Devuelve el éxito o error de una solicitud para un espacio de nombres XAML compatible. Una solicitud correcta notifica que el espacio de nombres XAML es un parámetro out.

Se aplica a