Comparteix a través de


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 contexto de esquema, el esquema se puede usar con diferentes 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 un XamlSchemaContext elemento entre varios autores de llamada, que incluyen autores de llamadas de plena confianza 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 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 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 las búsquedas. Todos los datos necesarios para determinar un esquema deben estar disponibles en la construcción y la configuración de AppDomain. Tenga en cuenta 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 son XamlType XamlMember seguras para subprocesos en sus implementaciones base. Si derivas de XamlSchemaContext o derivas clases del sistema de tipos XAML como XamlType y XamlMember , puedes elegir si las clases se comportarán como seguras para subprocesos.

Constructores

XamlSchemaContext()

Inicializa una nueva instancia de la clase XamlSchemaContext.

XamlSchemaContext(IEnumerable<Assembly>)

Inicializa una nueva instancia de la clase XamlSchemaContext basándose en un conjunto de ensamblados de referencia.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

Inicializa una nueva instancia de la clase XamlSchemaContext basándose en un conjunto de ensamblados de referencia y un objeto de configuración.

XamlSchemaContext(XamlSchemaContextSettings)

Inicializa una nueva instancia de la clase XamlSchemaContext basándose en un objeto de configuración.

Propiedades

FullyQualifyAssemblyNamesInClrNamespaces

Obtiene un valor que especifica si un esquema XAML y su contexto emplean 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 en las que hay dos constructores con la misma aridad (número de parámetros de entrada).

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
Finalize()

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

GetAllXamlNamespaces()

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

GetAllXamlTypes(String)

Busca en los ensamblados que contiene XamlSchemaContext y devuelve un conjunto de tipos del espacio de nombres XAML especificado.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetPreferredPrefix(String)

Obtiene una cadena que se notifica como el prefijo preferido para uso de los consumidores 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 realizar la conversión al valor targetType solicitado.

GetXamlDirective(String, String)

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

GetXamlType(String, String, XamlType[])

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

GetXamlType(Type)

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

GetXamlType(XamlTypeName)

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

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnAssemblyResolve(String)

Se llama cuando las operaciones usan este contexto de esquema para resolver un ensamblado requerido 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 un valor que indica si ha sido correcta o no la solicitud de un espacio de nombres XAML compatible. Si la solicitud es correcta, se notifica ese espacio de nombres XAML como parámetro de salida.

Se aplica a