XmlnsPrefixAttribute Clase

Definición

Identifica un prefijo recomendado para asociar a un espacio de nombres XAML para el uso de XAML, al escribir elementos y atributos en un archivo XAML (serialización) o al interactuar con un entorno de diseño que tiene características de edición de XAML.

public ref class XmlnsPrefixAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
Herencia
XmlnsPrefixAttribute
Atributos

Comentarios

Los procesadores o marcos XAML que incorporan XAML, o cualquier proceso que realice la serialización XAML, generalmente deben respetar el prefijo recomendado. El prefijo podría ser necesario en cualquier caso en el que los prefijos de asignaciones específicas del origen XAML original no se conservan de alguna manera en el gráfico de objetos en tiempo de ejecución o almacenados por un marco o tecnología. Un marco puede tener preferencias específicas para cómo serializar sus propios tipos que omiten el prefijo recomendado de sus propios ensamblados; Esto puede hacerse para promover de forma coherente un espacio de nombres XAML predeterminado. Sin embargo, este marco debe seguir proporcionando prefijos recomendados para posibles usos de herramientas y de terceros de sus tipos XAML. Consulta la sección "Procedimiento recomendado para compatibilidad con XAML Designer o serialización general" a continuación.

Una recomendación general para los prefijos es usar cadenas cortas, ya que el prefijo se aplica normalmente a todos los elementos serializados que proceden del espacio de nombres XAML. La longitud de la cadena de prefijo puede tener un efecto notable en el tamaño de la salida XAML serializada.

Si un prefijo solicitado ya está en uso por otro identificador de espacio de nombres XAML previamente encontrado o serializado, el comportamiento no se especifica (el comportamiento es hasta cada implementación de procesador XAML individual).

En la mayoría de los casos, solo se aplica XmlnsPrefixAttribute si también se ha aplicado al menos uno XmlnsDefinitionAttribute en el ensamblado para ese mismo espacio de nombres XAML.

En versiones anteriores de .NET Framework, esta clase existía en el ensamblado específico de WPF WindowsBase. En .NET Framework 4, XmlnsPrefixAttribute está en el ensamblado System.Xaml. Para obtener más información, consulta Types Migrated from WPF to System.Xaml.

Procedimiento recomendado para la compatibilidad con la Designer XAML o la serialización general

Incluso si piensas que el espacio de nombres XAML asociado sea el espacio de nombres XAML predeterminado en la mayoría de los casos de uso de tu marco o biblioteca, sigues especificando una cadena no vacía como prefijo recomendado para un espacio de nombres XAML. La información predeterminada del espacio de nombres XAML se lleva a cabo en archivos XAML individuales y flujos de nodo XAML. El espacio de nombres XAML predeterminado y cómo se define en un origen XAML determinado se puede perpetuar fácilmente para la serialización por mayúsculas y minúsculas sin usar XmlnsPrefixAttribute. Sin embargo, resulta XmlnsPrefixAttribute útil para los casos en los que el autor XAML ha elegido asignar el espacio de nombres XAML predeterminado a otra cosa. En este escenario, un editor de texto XAML incrustado en un entorno de diseño puede usar XmlnsPrefixAttribute como sugerencia para una asignación inicial de espacio de nombres xmlns XAML. O bien, un entorno de diseño puede agregar asignaciones Just-In-Time al XAML de respaldo para metáforas de diseño, como arrastrar objetos fuera de un cuadro de herramientas y a una superficie de diseño visual. Además, es posible que un diseñador admita simultáneamente varios marcos de habilitación de XAML y tiene un serializador XAML común que se basa en servicios XAML de .NET Framework en lugar de serialización específica del marco. Especificar para XmlnsPrefixAttribute estos escenarios ayuda a hacer que el uso de XAML para los tipos sea más portátil y sólido si el XAML se intercambia entre herramientas de diseño, o se somete a un recorrido de ida y vuelta entre editores XAML y otros consumidores, como compiladores de marcado u otra serialización.

Constructores

XmlnsPrefixAttribute(String, String)

Inicializa una nueva instancia de la clase XmlnsPrefixAttribute.

Propiedades

Prefix

Obtiene el prefijo recomendado asociado a este atributo.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)
XmlNamespace

Obtiene el identificador del espacio de nombres XAML asociado a este atributo.

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a

Consulte también