XmlnsPrefixAttribute XmlnsPrefixAttribute XmlnsPrefixAttribute XmlnsPrefixAttribute Class

Definizione

Identifica un prefisso consigliato da associare a uno spazio dei nomi XAML per l'utilizzo di XAML, quando si scrivono elementi e attributi in un file XAML (serializzazione) o quando si interagisce con un ambiente di progettazione che dispone di funzionalità di modifica XAML.Identifies a recommended prefix to associate with a XAML namespace for XAML usage, when writing elements and attributes in a XAML file (serialization) or when interacting with a design environment that has XAML editing features.

public ref class XmlnsPrefixAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
Ereditarietà
XmlnsPrefixAttributeXmlnsPrefixAttributeXmlnsPrefixAttributeXmlnsPrefixAttribute
Attributi

Commenti

I processori o i framework XAML che incorporano XAML o qualsiasi processo che esegue la serializzazione XAML devono in genere rispettare il prefisso consigliato.XAML processors or frameworks that incorporate XAML, or any process that performs XAML serialization, should generally honor the recommended prefix. Il prefisso potrebbe essere necessario in ogni caso in cui i prefissi di specifici mapping nell'origine XAML originale non vengono in qualche modo conservati nell'oggetto grafico di runtime o archiviati in altro modo da un Framework o una tecnologia.The prefix might be necessary in any case where prefixes from specific mappings in the original XAML source are not somehow preserved in the runtime object graph or otherwise stored by a framework or technology. Un Framework potrebbe avere preferenze specifiche per la serializzazione dei propri tipi che ignorano il prefisso consigliato dai propri assembly; Questa operazione può essere eseguita per promuovere in modo coerente uno spazio dei nomi XAML predefinito.A framework might have specific preferences for how to serialize its own types that ignore the recommended prefix from its own assemblies; this might be done to consistently promote a default XAML namespace. Tuttavia, un Framework di questo tipo deve comunque fornire prefissi consigliati per possibili utilizzi di terze parti e strumenti dei relativi tipi XAML.However, such a framework should still provide recommended prefixes for possible third-party and tool usages of its XAML types. Vedere la sezione "procedura consigliata per il supporto finestra di progettazione XAML o la serializzazione generale" riportata di seguito.See "Best Practice for XAML Designer Support or General Serialization" section below.

Un suggerimento generale per i prefissi consiste nell'usare stringhe brevi, perché il prefisso viene in genere applicato a tutti gli elementi serializzati che provengono dallo spazio dei nomi XAML.A general recommendation for prefixes is to use short strings, because the prefix is typically applied to all serialized elements that come from the XAML namespace. La lunghezza della stringa di prefisso può avere un effetto evidente sulle dimensioni dell'output XAML serializzato.The prefix string length can have a noticeable effect on the size of serialized XAML output.

Se un prefisso richiesto è già in uso da un altro identificatore dello spazio dei nomi XAML rilevato/serializzato in precedenza, il comportamento non è specificato (il comportamento è costituito da ogni singola implementazione del processore XAML).If a prefix being requested is already in use by another previously encountered/serialized XAML namespace identifier, the behavior is unspecified (behavior is up to each individual XAML processor implementation).

Nella maggior parte dei casi, XmlnsPrefixAttribute si applica solo se è stato anche applicato almeno XmlnsDefinitionAttribute un nell'assembly per lo stesso spazio dei nomi XAML.In most cases, you apply XmlnsPrefixAttribute only if you have also applied at least one XmlnsDefinitionAttribute in the assembly for that same XAML namespace.

Nelle versioni precedenti del .NET Framework, questa classe era presente nell'assembly WindowsBase specifico di WPF.In previous versions of the .NET Framework, this class existed in the WPF-specific assembly WindowsBase. In .NET Framework 4.NET Framework 4 ,XmlnsPrefixAttribute si trova nell'assembly System. XAML.In .NET Framework 4.NET Framework 4, XmlnsPrefixAttribute is in the System.Xaml assembly. Per altre informazioni, vedere Types Migrated from WPF to System.Xaml.For more information, see Types Migrated from WPF to System.Xaml.

Procedura consigliata per il supporto finestra di progettazione XAML o la serializzazione generaleBest Practice for XAML Designer Support or General Serialization

Anche se si prevede che lo spazio dei nomi XAML associato sia lo spazio dei nomi XAML predefinito nella maggior parte dei casi di utilizzo per il Framework o la libreria, è comunque necessario specificare una stringa non vuota come prefisso consigliato per uno spazio dei nomi XAML.Even if you intend the associated XAML namespace to be the default XAML namespace in most usage cases for your framework or library, you should still specify a non-empty string as the recommended prefix for a XAML namespace. Le informazioni predefinite dello spazio dei nomi XAML vengono trasferite nei singoli file XAML e nei flussi di nodi XAML.Default XAML namespace information is carried in individual XAML files and XAML node streams. Lo spazio dei nomi XAML predefinito e il modo in cui viene definito in un'origine XAML specificata possono essere facilmente perpetuati per la serializzazione in base al caso senza usare XmlnsPrefixAttribute.The default XAML namespace and how it is defined in a given XAML source can easily be perpetuated for per-case serialization without using XmlnsPrefixAttribute. Tuttavia, XmlnsPrefixAttribute è utile per i casi in cui l'autore XAML ha scelto di eseguire il mapping dello spazio dei nomi XAML predefinito a un altro elemento.However, the XmlnsPrefixAttribute is useful for cases where the XAML author has chosen to map the default XAML namespace to something else. In questo scenario un editor di testo XAML incorporato in un ambiente di progettazione XmlnsPrefixAttribute può utilizzare come hint per un mapping iniziale xmlns dello spazio dei nomi XAML.In this scenario a XAML text editor embedded in a design environment can use XmlnsPrefixAttribute as a hint for an initial XAML namespace xmlns mapping. In alternativa, un ambiente di progettazione può aggiungere i mapping JIT al codice XAML sottostante per le metafore di progettazione, ad esempio il trascinamento di oggetti da una casella degli strumenti e in un'area di progettazione visiva.Or a design environment can add just-in-time mappings to the backing XAML for design metaphors such as dragging objects out of a toolbox and into a visual design surface. Inoltre, è preferibile che una finestra di progettazione possa supportare contemporaneamente più framework di abilitazione di XAML e disponga di un serializzatore XAML comune che si basa su .NET Framework servizi XAML anziché sulla serializzazione specifica del Framework.Also, it is conceivable that a designer could simultaneously support multiple XAML-enabling frameworks, and has a common XAML serializer that relies on .NET Framework XAML Services rather than framework-specific serialization. Se si XmlnsPrefixAttribute specifica un oggetto per questi scenari, l'utilizzo di XAML per i tipi risulta più portabile e affidabile se il codice XAML viene scambiato tra gli strumenti di progettazione o viene sottoposto a una round trip tra editor XAML e altri consumer, ad esempio compilatori di markup o altro serializzazione.Specifying a XmlnsPrefixAttribute for these scenarios helps make the XAML usage for your types more portable and robust if the XAML is exchanged between design tools, or undergoes a round trip between XAML editors and other consumers such as markup compilers or other serialization.

Costruttori

XmlnsPrefixAttribute(String, String) XmlnsPrefixAttribute(String, String) XmlnsPrefixAttribute(String, String) XmlnsPrefixAttribute(String, String)

Inizializza una nuova istanza della classe XmlnsPrefixAttribute.Initializes a new instance of the XmlnsPrefixAttribute class.

Proprietà

Prefix Prefix Prefix Prefix

Ottiene il prefisso consigliato associato all'attributo.Gets the recommended prefix associated with this attribute.

TypeId TypeId TypeId TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)
XmlNamespace XmlNamespace XmlNamespace XmlNamespace

Ottiene l'identificatore dello spazio dei nomi XAML associato all'attributo.Gets the XAML namespace identifier associated with this attribute.

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Restituisce il codice hash per l'istanza.Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Implementazioni dell'interfaccia esplicita

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

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Si applica a

Vedi anche